ورود

View Full Version : سوال: تنظیمات qmainwindow



kitten
دوشنبه 02 خرداد 1390, 08:58 صبح
سلام دوستان من دارم یه برنامه مینویسم که پنجره اصلی برنامه ام از qmainwindow به ارث برده حالا می خوام که یه سری تنظیمات روش انجام بدم ولی نمی دونم دقیقا چه طوری می تونید کمک کنید
۱. برنامه باید دارای سه حالت باشه یکی مینی مایز و ماکسیمایز و یه حالت که سایزش نه کوچک بشه و نه بزرگ یعنی فیکس باشه
۲.فرض کنید که من دوتا widget در برنامه ام گذاشته ام یکی سمت چپ و دیگری سمت راست حالا می خوام وقتی ماکسیمایز شد سمت چپی سایزش(عرضش) ثابت بمونه و سمت راستی سایزش بزرگ بشه فقط
۳. من یه سری widget داخل برنامه گذاشتم که می خوام بعضی هاشون نسبت به هم فاصله کمتری داشته باشند و بعضی هاشون فاصله بیشتری داشته باشند چه طوری می شه فاصله دو تا widget را تعیین کرد؟
۴.من چند تا qpushbutton دارم که داخلشون با استفاده از seticon یه سری عکس لود کردم حالا می خوام وقتی رفتم روش ایستادم یه عکس دیگه لود بشه چه طوری این کار را بکنم؟

glassysmart
دوشنبه 02 خرداد 1390, 12:16 عصر
سلام
2- این کار ربطی به خود qmainwindow ندارد این موضوع به QHBoxLayout و QVBoxLayout مربوط میشه و شما می توانی بااستفاده از این ها در موقع تغییر ساز ه نسبت های تغییر را مشخص کنی و خیلی کار های دیگر
3- جواب سوال 2
4- stylesheet مورد نظر شما هست که تو گوگل بگردی مثال براش پیدا میشه و از اون برای کار های زیبا سازی برنامه استفاده می شود
اگر جواب سوال 1 را یافتی اینجا قرار بده بقیه هم استفاده کنند

kitten
دوشنبه 02 خرداد 1390, 18:53 عصر
سلام می شه قسمت ۲ و۳ را برام یه مثال بزنید اگه در مورد ۴ هم مطلبی پیدا کردید بذارید ممنون می شم

glassysmart
دوشنبه 02 خرداد 1390, 23:49 عصر
http://doc.qt.nokia.com/latest/layouts-basiclayouts.html
http://doc.qt.nokia.com/latest/layout.html
PDF (http://www.google.com/url?sa=t&source=web&cd=5&sqi=2&ved=0CDQQFjAE&url=http%3A%2F%2Ffoss.in%2F2007%2Fregister%2Fslide s%2FStyling_Qt_Using_Style_Sheets_484.pdf&ei=grfaTeOxHoGCtgeWkPToDg&usg=AFQjCNGiHBii1l-Fm7SWvYiR-lz1uRKw2g&sig2=vjsCm6Iextjt8OBIgNIUHw)
http://doc.qt.nokia.com/4.7/stylesheet-examples.html
http://www.crossplatform.ru/?q=node/307

glassysmart
دوشنبه 02 خرداد 1390, 23:52 عصر
اینم یه مثال

QPushButton:hover{
color: rgb(192, 120, 255);
background-color: rgb(112, 17, 255);
}
QPushButton:!hover{

background-color: rgb(255, 253, 254)
}

حامد مصافی
سه شنبه 03 خرداد 1390, 23:55 عصر
1- ساده ترین راه فراخوانی توابع setMinimumSize و setMaximumSize با پارامترهای یکسان است.

2- Horizontal Size Policy ویدجت سمت چپ را fixed ست کنید.

3- هر layout خصوصیتی با نام layoutSpacing دارد که می‌توانید از آن برای تنظیم فاصله بین ویدجت‌های آن layout استفاده کنید.