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

Qt قسمت چهارم LineEdit و CheckBox

با سلام خدمت کاربران  سایت امیدوارم حالتون خوب باشه تو این قسمت از آموزش Qt  می خوام در مورد LineEdit و CheckBox بهطور خلاصه باهاتون صحبت کنم

پس با من همراه باشید

قبل از شروع یک نکته رو باید بهتون بگم به دلیل زیاد بودن توابع و دستورات من نمیتونم همه ی اون هارو توضیح بدم بلکه فقط موارد اصلی رو آموزش خواهم داد و شما برای آشنایی با توابع و دستورات هر ویجت می تونید در Qt Creator  به بخش help مراجعه کنید که شامل مستندات کاملی در مورد هر ویجت هست که میشه گفت معادل msdn برای زبان های ماکروسافتی هست .

خب هالا برای شروع یک پروزه ی جدید باز کنید و مانند شکل زیر  یک PushButton , LineEdit , label و 2 تا checkbox از widget box انتخاب کرده و در mainwindow قرار بدین

Qt17

میتونید نام اونهارو همون طور که در قسمت قبلی گفتم با double click به روی اون ها تغییر بدین و یا از طریق تابع setText که به عنوان مثال برای check box به صورت زیر است

ui->checkBox->setText("num1");

و فراموش نکنید که اگر بخاهیم از اول با همین نام باشد باید دستور  بالا رو در constructor  قرار دهیم

بطور کلی اگه بخاهیم هر کدی از ابتدای شکل گیری window  در برنامه اجرا شود باید داخل constructor قرارشون بدیم

 

ما میتونیم وضیعت  checkbox رو هم به صورت گرافیکی و هم به صورت کد تغییر بدیم مثلا اگر بخاهیم checkbox اول از همان ابتدا چک شده باشد دستور زیر رو در constructor می نویسیم

 ui->checkBox->setChecked(true);

حالا ما در این برنامه می خواهیم با کلیک کردن pushbutton جمله داخل lineEdit و وضیعت checkbox ها برای ما در label چاپ بشه

ما میتونیم از طریق کد زیر از وضیعت چک باکس ها مطلع شویم

ui->checkBox->isChecked()

تابع isChecked از نوع bool  می باشد که اگر خروجی ان true  باشد یعنی که checkbox مورد نظر checked است

حالا روی pushButton راست کلیک کرده و از go to slot گزینه ی clicked رو انتخاب می کنیم و کد زیر رو در اون می ریزیم

    QString sentence=ui->lineEdit->text();
    if(ui->checkBox->isChecked() && ui->checkBox_2->isChecked())
    {
        ui->label->setText("you typed "+sentence+" and both of checkboxes are checked");
    }
    else if(ui->checkBox->isChecked() || ui->checkBox_2->isChecked())
    {
         ui->label->setText("you typed "+sentence+" and one  of the  checkboxes is checked");
    }
    else
    {
      ui->label->setText("you typed "+sentence+" and both of checkboxes are unchecked");
    }

در Qt به جای String از QString استفاده می کنیم

در کد بالا ابتدا مقدار lineEdit رو داخل یک QString  می ریزیم و سپس با دستور شرطی if بررسی می کنیم که اگر هردو checkbox ها تیک خورده باشند چه جمله ای رو نمایش بده و اگر یکی تیک خورده باشد چه جمله ای و …

QT18

امیدوارم از مطالب امروز رازی باشید

 

 

0 پاسخ در "Qt قسمت چهارم LineEdit و CheckBox"

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

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

 

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