将属性添加到QT C 中的Qpushbutton
Adding a property to QPushButton in Qt C++
我正在使用qt创建一个接口。我添加了一个按钮,当它带有鼠标时,我会看到Qlabel并索要信息。(不会单击按钮)我该怎么做。
我写了以下代码。但是,不要查看UI->结帐按钮。我想查看CheckoutButton。
mainwindow.h
public:
explicit PRJSVN(QWidget *parent=0);
~PRJSVN();
bool eventFilter(QObject *obj, QEvent *e);
mainwindow.cpp
PRJSVN::PRJSVN(QWidget *parent):
QMainWindow(parent),
ui(new Uİ::PRJSVN)
{
ui->setupUi(this);
ui->CheckoutButton->installEventFilter(this);
}
bool PRJSVN::eventFilter(QObject *obj, QEvent *e)
{
if(obj==(QObject*)ui->CheckoutButton)
{
if(e->type()==QEvent::Enter)
{
ui->label->SetText("Checkout Button");
}
}
return QWidget::eventFilter(obj,e);
}
至少有两种方法可以在按钮上执行操作。查看此问题:
第一种方法是将按钮子分组并在Enter事件上添加/发射新的悬停信号。
第二种方法是使用按钮在小部件中使用事件过滤器。在链接的问题中使用事件过滤器方法时,您应该将事件过滤器函数更改为:
bool YourWidget::eventFilter(QObject *obj, QEvent *e)
{
if (obj == (QObject*)yourPushButton) {
if (e->type() == QEvent::Enter)
{
// some action on mouseover
}
}
return QWidget::eventFilter(obj, e);
}
并使用事件过滤器:
yourPushButton->installEventFilter(this);
错误:在此范围中未声明'CheckoutButton'
由于您的课程没有名为CheckoutButton
的成员,因此您的类有一个称为ui
的成员,该对象的成员称为CheckoutButton
。
请参阅有关如何访问它的构造函数。
相关文章:
- 将成员变量添加到共享库中的类中,不会破坏二进制兼容性吗
- .cpp和.h文件中的模板专用化声明
- 反向给定链表中的K节点
- 正在查找文档以获得PS4平台的C++中的设备信息
- enum是C++中的宏变量还是整数变量
- 使用C++库在Android项目中修改gradle中的cmake参数,用于插入指令的测试
- 将字符串存储在c++中的稳定内存中
- 文本文件中的单词链表
- 递归函数计算序列中的平方和(并输出过程)
- 如何从C++中的依赖类型中获得它所依赖的类型
- C++中的"inline"关键字
- QGraphicsScene 中的 QPushButton 需要双击而不是单击
- 使用 QpushButton 切换显示在 QLabel 中的图像
- 如何将QPushButton放入小部件中的Qt3DWindow中?
- 访问回调函数中的 QPushButton
- 获取QT中所有Qpushbutton的列表
- 将属性添加到QT C 中的Qpushbutton
- 如何在 qt 中对 QPushButton 的背景颜色进行动画处理
- 如何更改QDialogBox中的默认QPushButton
- 访问QPushbutton点击槽中的坐标