社区
Qt
帖子详情
如何在QListWidgetItem中添加按钮?
coderlaw
2012-10-25 11:03:16
就是一个listwidget中的各个item都添加几个按钮。应该怎么去做?
...全文
3311
15
打赏
收藏
如何在QListWidgetItem中添加按钮?
就是一个listwidget中的各个item都添加几个按钮。应该怎么去做?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wlxj8284
2012-10-29
打赏
举报
回复
QTableWidget * tvDecoderItemArea = new QTableWidget(this);
tvDecoderItemArea->setObjectName("tvDecoderItemArea");
tvDecoderItemArea->setColumnCount(1);
tvDecoderItemArea->horizontalHeader()->setVisible(false);
tvDecoderItemArea->verticalHeader()->setVisible(false);
tvDecoderItemArea->horizontalHeader()->setStretchLastSection(true);
int index = tvDecoderItemArea->rowCount();
tvDecoderItemArea->setRowCount(index+1);
QPushButton* pItem = new QPushButton(tr("text_%1").arg(index+1));
tvDecoderItemArea->setCellWidget(index,0,pItem);
coderlaw
2012-10-25
打赏
举报
回复
似乎是使用QStyledItemDelegate这个来实现?求教如何使用?有没有例子?
coderlaw
2012-10-25
打赏
举报
回复
这样还是有问题,,,
coderlaw
2012-10-25
打赏
举报
回复
好吧,我把iconsize设置为1,1,可以显示了,也可以一行显示多个了,但总觉得不是很好,有没有更好的解决办法呢?
xiachm
2012-10-25
打赏
举报
回复
可能是你的布局没有调整边距所致,在你这两个布局上设置setContentsMargins(0, 0, 0, 0);
coderlaw
2012-10-25
打赏
举报
回复
listWidget->setIconSize(QSize(158,117));
listWidget->setViewMode(QListView::IconMode);
这两句去掉就可以显示出来了,但是只能一行显示一个,不能一行显示多个,这个问题怎么解决呢?
coderlaw
2012-10-25
打赏
举报
回复
listWidget->setResizeMode(QListView::Adjust);
listWidget->setGridSize(QSize(165,176));
listWidget->setIconSize(QSize(158,117));
listWidget->setViewMode(QListView::IconMode);
listWidget->setWordWrap(true);
listWidget->setAutoScroll(true);
mItem = new QListWidgetItem(listWidget);
mLayoutWidget = new QWidget(listWidget);
mVLayout = new QVBoxLayout(mLayoutWidget);
mHLayout = new QHBoxLayout();
QLabel *showPic = new QLabel(mLayoutWidget);
QPixmap pixMap(QString(":/b_1243700182001.jpg"));
showPic->setPixmap(pixMap);
mVLayout->addWidget(showPic);
QLabel *showName = new QLabel(text,mLayoutWidget);
mVLayout->addWidget(showName);
mDeleteBt = new QPushButton(mLayoutWidget);
mDetailBt = new QPushButton(mLayoutWidget);
mUploadBt = new QPushButton(mLayoutWidget);
mHLayout->addWidget(mDeleteBt);
mHLayout->addWidget(mDetailBt);
mHLayout->addWidget(mUploadBt);
mVLayout->addLayout(mHLayout);
mLayoutWidget->setLayout(mVLayout);
mLayoutWidget->show();
listWidget->setItemWidget(mItem,mLayoutWidget);
为什么是空白?什么都没有,但是我把listWidget->setItemWidget(mItem,mLayoutWidget);改成listWidget->setItemWidget(mItem,mUploadBt);就显示出来一部分。
圆圆胖胖的车车
2012-10-25
打赏
举报
回复
嗯哈。
QWidget *container = new QWidget;
container->addLayOut(xxxx);
container->addWidget(xxxWidget);
item->setItemWidget(containter);
//这个container完全可以用Desinger去做哈。高效快捷~
coderlaw
2012-10-25
打赏
举报
回复
,,这样那我把所有的东西,包括item的text、ICON都放入这个QWidget了?
xiachm
2012-10-25
打赏
举报
回复
QWidget是一个包裹,它占据Item的所有空间
coderlaw
2012-10-25
打赏
举报
回复
这个QWidget在Item里面的位置如何调整?
xiachm
2012-10-25
打赏
举报
回复
先创建一个QWidget,然后对这个QWidget设置布局,然后往布局里添加你的按钮,最后把这个QWidget设置到item上
coderlaw
2012-10-25
打赏
举报
回复
使用QListWidget::setItemWidget时,如何对item进行布局?现在控件加进去了,但是都重叠在一起了。
xiachm
2012-10-25
打赏
举报
回复
QListWidget::setItemWidget
在Q
List
Widget
Item
中
添加
控件
Q
List
Widget
*
list
=new Q
List
Widget
; Q
List
Widget
Item
*
item
=new Q
List
Widget
Item
(
list
,0);
item
->setSizeHint(QSize(100,100)); Q
Widget
*w = new Q
Widget
(
list
); QPushButton *pushButton=new QPushButton(
Q
List
Widget
Item
自定义
添加
控件
最近在做一个小的项目,其
中
想使用q
list
widget
实现自定义数据的显示,自定义行要求有图片列,文字列,
按钮
列等,于是研究了一下q
list
widget
的使用。 要想实现上述要求,必须按如下顺序实现 1、这里重点是ui->
list
Widget
->add
Item
(
item
);的使用,必须先将Q
List
Widget
Item
对象加入q
list
widget
。 Q
List
Widget
It...
Qt之Q
List
Widget
Item
的
添加
与删除
1.实现的功能 在
list
Widget
中
水平添Q
List
Widget
Item
,点击
按钮
删除所有Q
List
Widget
Item
,下面直接上代码,代码
中
有每一步的注释。 2.代码实现 #include "mainwindow.h" #include "ui_mainwindow.h" #include<Q
List
Widget
> #include<QDebug> MainWindow::MainWindow(Q
Widget
*parent) : QMainWindow(parent
Q
List
Widget
类似于组合
按钮
之前记录过QPushButton
添加
图片文字,通过QButtonGroup实现多个
按钮
只有一个可以被同时选
中
,与之相比,Q
List
Widget
的使用更为简洁,例子如下: Q
List
Widget
Item
* lw
Item
2 = new Q
List
Widget
Item
(ui->
list
Widget
); lw
Item
2->setIcon(QIcon(":/img/aio.png")); lw
Item
2->setText("AI"); lw
Item
2->setTextAlignment(Qt:
python Pyqt5在Q
List
Widget
中
通过双击鼠标
添加
按钮
控件
Pyqt5在Q
List
Widget
中
通过双击鼠标
添加
按钮
控件
Qt
16,212
社区成员
26,592
社区内容
发帖
与我相关
我的任务
Qt
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
复制链接
扫一扫
分享
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章