首页 技术 正文
技术 2022年11月14日
0 收藏 673 点赞 4,427 浏览 949 个字

添加按钮

void QTableWidget::setCellWidget ( int row, int column, QWidget * widget )

widget可以是自己定义的按钮

class MyPushButton : public QPushButton
{
Q_OBJECT
public:
explicit MyPushButton(int i, int j, int flag);
~MyPushButton();
void mySetText();//i对应端口信息
}
mySetText()函数中:setStyleSheet("background-color: rgb(255, 100, 0);");//橙色
setToolTip(tr("端口未授权"));//配置的MAC地址和采集卡不符合
setText(tr("端口%1").arg(m_no + ));

按钮添加完之后怎么去触发它的点击信号呢?尝试了很多中方法,比如直接调用  QTableWidget的itemclicked函数,都失败了,

最后从Stackoverflow上找到了类似的方法,将comboBox的触发方法改成pushButton就好了

QSignalMapper* signalMapper = new QSignalMapper(this);connect(newBtn, SIGNAL(clicked()), signalMapper, SLOT(map()));//存储按钮
signalMapper->setMapping(newBtn, QString("%1-%2").arg(rowCount).arg(i + ));connect(signalMapper, SIGNAL(mapped(const QString &)),this, SLOT(changed(const QString &)));//槽函数
void MainWindow::changed(QString position)
{
QStringList coordinates = position.split("-");
int row = coordinates[].toInt();
int col = coordinates[].toInt();
disPlayPort(row,col);//row 和col就是对应的行和列,对应到相应的按钮
}
相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:8,910
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,435
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,250
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,061
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,693
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,731