PDA

View Full Version : سوال: سوال در مورد QComboBox



woeful
پنج شنبه 12 خرداد 1390, 17:48 عصر
سلام

من خاصیت setEditable رو در این true ,widget قرار دادم و مشکلم اینه که میخام هر موقع منوی drop down این widget باز میشه روی این قسمتی که میشه داخلش چیزی نوشت رو نگیره و همیشه رو به پایین باز بشه چطور این کار رو انجام بدم

اگه مبهم توضیح دادم میتونم عکس بزارم .

با تشکر
Woeful

حامد مصافی
پنج شنبه 12 خرداد 1390, 18:59 عصر
به طور پیش‌فرض و علی‌القاعده همیشه همینطوره مگر در سایر محیط‌ها و استایل‌هایی نظیر clean looks در گنوم.

woeful
پنج شنبه 12 خرداد 1390, 20:21 عصر
ممنون از جواب اما من متوجه منظورتون نشدم من به صورت default کامپایل میکنم البته توی windows نیستم

mousamk
پنج شنبه 12 خرداد 1390, 22:11 عصر
استایل سیستم شما اینطوریه که کامبوباکس ها رو اون شکلی که گفتین نشون میده.
ویجتهای Qt موقع اجرا از منابع خود سیستم عامل استفاده میکنن و وقتی که ظاهر سیستم شما اینطوریه که لیست کامبوباکس رو روی کامبوباکس نشون میده، برنامه Qt شما هم از این روند پیروی میکنه.
به نظر من شما نباید به فکر این مسئله باشین. اگه کاربر از این حالت خوشش نیاد، مطمئنا استایل سیستم عاملش رو عوض میکنه.

ولی به هر حال اگه اصرار دارین که اینطوری نباشه، میتونین برنامه Qt خودتون رو مجبور کنین که با استایل دیگری اجرا بشه.
کافیه به آرگومانهای برنامه خودتون عبارت style stylename- رو اضافه کنین. یعنی مثلا اگه اسم فایل اجرایی برنامه شما appname باشه، با اجرای زیر، اون رو در استایل motif اجرا میکنه، مستقل از این که استایل سیستم عامل چی هست:

./appname -style motif

برای دیدن برنامه تون در استایلهای مختلف، توی Tools -> Form editor -> Preview in میتونین پیش نمایش رو ببینین.

woeful
یک شنبه 15 خرداد 1390, 14:20 عصر
سلام
ممنون از جواب ها

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

QApplication::setStyle(QStyleFactory::create("cde"));

با تشکر
woeful