لطفا وارد شوید یا ثبت‌نام کنید تا به انجمن‌ها دسترسی کامل داشته باشید.



 
امتياز موضوع :
  • 0 رأي - معدل امتيازات : 0
  • 1
  • 2
  • 3
  • 4
  • 5
آموزش توابع Qt قسمت سوم
2004-08-08, 01:49 AM,
ارسال : #1
آموزش توابع Qt قسمت سوم
فصل سوم : Family Values

اين مثال چگونگي ساختن شيء هاي والد و فرزند را نشان مي دهد. ما آن را ساده خواهيم گرفت و فقط از يك والد و تنها يك فرزند استفاده مي كنيم.
[ltr]
کد :
#include    <qapplication.h>
#include    <qpushbutton.h>
#include    <qfont.h>
#include    <qvbox.h>

int  main ( int   argc , char  **argv );
{
    QApplication   a(argc,argv);
    QVBox   box;
    box.resize(200,120);
    QPushButton   quit ( “Quit” , &box );
    Quit.setFont ( QFont ( “Times”, 18 , QFont::Bold ) );
    QObject::connect ( &quit, SIGNAL ( clicked( ) ), &a , SLOT ( quit( ) ) );
    a.setMainWidget ( &box );
   box.show( );
   return    a.exec( );
}
[/ltr]

بررسي خط به خط برنامه :
[ltr]
کد :
#include   <qvbox.h>
[/ltr]
ما qvbox.h را اضافه و ضميمه كرديم تا بتوانيم از كلاس داخلي استفاده كنيم.
[ltr]
کد :
QVBox   box;
[/ltr]
دراينجا ما به سادگي يك كانتينر جعبه عمودي ساختيم. QVBox اشياء فرزند خود را دريك رديف عمودي مرتب مي كند، يكي بالاي ديگري، فضاي اضافي را با توجه به QWidget:ConfusedizePolicy( ) هر فرزند به دست مي گيريد و مديريت مي كند.
[ltr]
کد :
box.resize( 200 , 120 );
[/ltr]
ما عرض آنرا به 200 پيكسل و طول آنرا نيز به 120 پيكسل تغيير داديم.
[ltr]
کد :
QPushButton    quit ( “Quit” , &box );
[/ltr]
فرزند متولد مي شود. اين QPushButton همرا با يك متن (“Quit”) و يك والد ( يعني box ) ساخته شده است. يك شيء فرزند هميشه در بالاي والد خود قرار مي گيرد. زماني كه نمايش داده مي شود، توسط حدومرز والد خود در جاي خود چيده مي شود.
شيء والد، QVBox ، بصورت خودكار فرزند را در وسط جعبه خود قرار مي دهد. دكمه تمام فضاي والد را مي گيرد،زيرا چيز ديگري به آن اضافه نشده است .
[ltr]
کد :
box.show( );
[/ltr]
زماني كه شيء والد نمايش داده شد، خودش تابع show( ) رابراي نمايش تمام فرزندانش فراخواني مي كند( به جز آنهايي كه شما بصورت صريح تابع QWidget::hide( ) رابرايشان فراخواني كرده ايد).

عملكرد برنامه :

هنوز دكمه تمام شيء را فرا نگرفته است. درعوض، شكل طبيعي خود را گرفته است. اين وضعيت بخاطر اين است كه دراين زمان يك شيء در مرتبه بالاترقرار دارد، كه اين شيء از size-hint و size-change-policy براي تنظيم اندازه و محل دكمه استفاده مي كند. (براي اطلاعات بيشتر درمورد اين توابع به QWidget:ConfusedizeHint( ) و QWidget:ConfusedetSizePolicy( ) مراجعه كنيد.)
براي كامپايل برنامه مي توانيد به قسمت كامپايل و اجرا برنامه در فصل اول مراجعه كنيد.

تمرينات :
سعي كنيد اندازه پنجره را تغيير دهيد. دكمه چگونه تغيير مي كند؟ size-change policy چيست؟ چه اتفاقي براي طول دكمه خواهد افتاد اگر كه از قلم بزرگتري استفاده كنيد؟ اگر شما سعي كنيد كه اندازه پنجره را واقعاً كوچك كنيد چه اتفاقي خواهد افتاد؟
جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ
2004-08-08, 09:45 AM,
ارسال : #2
 
آقا باز هم تشکر...
انشاا...يک منبع خوب از QT گرد آوردي بشه...

لطفا قبل از اينکه سؤالات خود را در انجمن مطرح کنيد،‌حتما قوانين انجمن‌ها را مطالعه فرماييد.
مشاهده تارنمای کاربر جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ
2004-08-08, 11:00 AM,
ارسال : #3
 
xigmacorporation خیلی عالیه . ممنون.
آقا آلن این ها رو تو بخش مقالات اضافه می کنید دیگه ؟ نه ؟


irix@Hell:~$ mkfs -t Free /body/.mind && mount -o rw /body/.mind /FreeMind
مشاهده تارنمای کاربر جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ
2004-08-08, 05:04 PM,
ارسال : #4
 
خواهش مي كنم. انشاءالله به اميد خدا ادامه مي دم.
متشكرم.
جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ


رفتن به انجمن :


کاربران در حال مشاهده موضوع : 1 مهمان