منوهای نصب در پنل مدیریت

Qt قسمت ششم ComboBox و RadioButton

با سلام خدمت کاربران سایت به قسمت ششم از سری آموزش Qt رسیدیم  امروز می خواهم در مورد combobox که تعدادی گزینه در اختیار کاربر می گزاره تا کاربر یکی رو انتخاب کنه و radioButton که همان مشابه checkBox است با این تفاوت که فقط  یکی از اون ها می تونه check بشه صحبت کنم . پس با من همراه باشید

 

اول از همه همانطور که در قسمت های قبل دیدید یک پروژه جدید باز می کنیم  به بخش ui رفته و مانند شکل زیر ویجت هارا اضافه می کنیم

Qt33

 

  • radio1 و radio2 رو در یک گروه و radio3 و radio 4را در یک گروه layout قرار دهید
  • این کار با عث می شود تا کاربر یتواند در هر گروه یکی را انتخاب کند در غیر این صورت فقط یک radiobutton قابل انتخاب کردن است

برای  یادگیری layout ها به قسمت پنجم مراجعه کنید

حالا می رسیم به بخش کد زنی  در مرحله ی اول باید مقدار های اولیه رو به comboBox و RadioButtons یدهیم و همونطور که می دونید این کار در constructor انجام می شود برای افزودن ایتم به combo از دستور زیر استفاده می کنیم

 ui->comboBox->addItem("developersian");

روش بالا برای نمایش string در combo بود برای افزودن مفادیر عددی می توان از روش های مشابه زیر استفاده کرد

  for(int i=1;i<5;i++)
    {
        ui->comboBox->addItem("number "+QString::number(i));
    }

و برای مقدار دهی radio button  از دستور زیر استفاده می کنیم

 ui->radioButton->setChecked(true);

Qt34

 

 

حالا در موحیط ui روی button راست کلیک کرده و go to slot را انتخاب و تابع کلیک را می سازیم و داخل ان می نویسیم

    if(ui->radioButton->isChecked() && ui->radioButton_3->isChecked())
    {
        ui->lineEdit->setText("combo : "+ui->comboBox->currentText()+ " radio :"+ui->radioButton->text()
                              +" & "+ui->radioButton_3->text());
    }
    else if(ui->radioButton_2->isChecked() && ui->radioButton_3->isChecked())
    {
        ui->lineEdit->setText("combo : "+ui->comboBox->currentText()+ " radio :"+ui->radioButton_2->text()
                              +" & "+ui->radioButton_3->text());
    }
    else if(ui->radioButton->isChecked() && ui->radioButton_4->isChecked())
    {
        ui->lineEdit->setText("combo : "+ui->comboBox->currentText()+ " radio :"+ui->radioButton->text()
                              +" & "+ui->radioButton_4->text());
    }
    else if(ui->radioButton_2->isChecked() && ui->radioButton_4->isChecked())
    {
        ui->lineEdit->setText("combo : "+ui->comboBox->currentText()+ " radio :"+ui->radioButton_2->text()
                              +" & "+ui->radioButton_4->text());
    }

 به نکات زیر توجه کنید 

  • دستور زیر وضیعت چک بودن radio button را بررسی می کند 
  • ui->radioButton->isChecked()

     

  • دستور زیر مقدار فعلی comboBox را در اختیار ما قرار می دهد 
ui->comboBox->currentText()

Qt35

با اجرای برنامه نتیجهرا مشاهده خواهید کرد

Qt36

 

 

0 پاسخ در "Qt قسمت ششم ComboBox و RadioButton"

ارسال یک پیغام

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

 

2017 © تمامي حقوق مطالب سايت Developersian محفوظ و همچنین استفاده از مطالب سایت با ذکر منبع بلامانع است.
X