چگونه در یک سلول QTableView یک QComboBox قرار دهیم
-
سلام دوستان. وقتتون بخیر.
چه جوری میشه توی یه ستون QTableView یه combobox داشت؟
ممنون پیشاپیش -
p{direction:rtl;text-align:right}. سلام دوست عزیز
این کار به سادگی قابل انجام هست
@
QComboBox* combo = new QComboBox();
ui->table->setCellWidget(0,0,combo);
combo->setCurrentIndex(0);
combo->insertItem(1,"item text");
combo->insertItem(2,"item text");
@p{direction:rtl;text-align:right}. امیدوارم که به کارت بیاد
-
p{direction:rtl; text-align:right}. البته قبلش یه Column و یک Row باید اضافه بشه به Table
موفق باشی -
ممنون عباس جان
اما این برای QTableWidget نیستش؟
من دارم از QTableView استفاده می کنم. همچین متدی نداره.
راهی داره؟ -
p{direction:rtl;text-align:right}. خواهش میکنم
چه اکشن هایی بعدا قراره صورت بگیره؟
این Combobox قابلیت edit داره ؟ یا مثلا فقط selectable هست؟
معمولا واسه اینجور کارا از widget استفاده میکنن.(البته تا اینجا که من تو برنامه ها دیدم) -
p{direction:rtl;text-align:right}. آیا دلیل خاصی برای استفاده از QTableView داشتی؟
اگر تابحال از Model ها استفاده نکردی کمی برات سخت میشه. -
دلیل خاصی نداره. اکثرا از tableview و مدل ها استفاده کردم.
مشکلی تا الان در مورد استفاده از مدل ها نداشتم. یکبار هم checkbox توی مدلم قرار دادم. اما الان می خوام combobox قرار بدم. -
p{direction:rtl;text-align:right}. خب خیلی خوبه
اگه قبلا checkbox قرار دادین خیلی راحت میتونین combobox قرار بدین
ولی اگه مدل هارو بلدی ، "اینجا":http://qt-project.org/wiki/Combo_Boxes_in_Item_Views رو ببین
قبلا تو ویکی یه صفحه ایجاد کردیم در این باره -
فکر می کنم باید شیفت بدم به QTableWidget
اما اگه باز می دونی که چه جوری میشه ْQtableview این کارو کرد محبت کن و بگو. دونستنش بد نیست.
ممنون از لطفت -
p{direction:rtl;text-align:right}. پست بالا رو نخوندی؟
ببین از view واسه مواقعی که تعداد آیتم های خیلی زیادی میخواد add بشه استفاده می کنن.
چون delegate داره.مثلا من یه برنامه دارم که یه Tableview داره و بیش از 800000 آیتم با تمام جزئییات رو در کمتر از 10 ثانیه add میکنه
البته با MFC نوشته شده
ولی اگه همین برنامه بخواد از QTableWidget استفاده کنه ، زمان زیادی میبره
و فرق اساسی این دو اینه که Widget به صورت Manual هست ولی view باید با Model بهش data بدی. -
ممنون عباس جان...
بعد از اینکه \ست کردم کامنتت رو خوندم.
آره بهتر که اینحا از QtableWidget استفاده کنم.
متشکر از توضیحاتت -
p{direction:rtl;text-align:right}. خواهش می کنم.
یه سری هم به "اینجا":http://qt-project.org/forums/viewthread/21914/ بزن
موفق باشید