通过按钮显示图像

Posted

技术标签:

【中文标题】通过按钮显示图像【英文标题】:Image Display by Pushbutton 【发布时间】:2014-08-13 12:35:02 【问题描述】:

我正在使用 Qtdesigner,我是新手,所以我的问题是我有一个 Q 按钮,它是在 Qtdesigner 的帮助下创建的,我想通过向其添加标签小部件来向其添加图像将在同一帧中“也就是说,如果我按下 Q 按钮,它应该在该标签小部件上显示图像,该小部件将在同一帧中,所以我尝试通过将此代码添加到编辑样式表中来做到这一点像这样编辑框架的样式表

QPushButton:pressedclass = Qlabel
label_92 image: url(:/i_Diagram/i_diagram/idiagram3.png);

但这不会起作用,所以有人可以帮助解决这个问题

【问题讨论】:

你为什么要尝试使用样式表?您可以将QPushButtonclicked 信号连接到您为标签设置图像的插槽。或者只是隐藏标签并在按下按钮时显示它。 【参考方案1】:

如果你想给Qt Creator中的QPushButton添加图片,可以在属性中设置,选择按钮后:-

注意此处的图标,该图标之前已添加到 Qt 资源文件中,然后在属性中选择此处。您也可以添加文字。

如果您仍然想在单独的标签上设置图像,那么您可以在代码中执行此操作,假设您的对话框是使用匹配的类(Qt Designer Form Class)创建的。假设您将 PushButton 命名为“SetImagePushButton”,则可以在其匹配的类中添加一个插槽

void on_SetImagePushButton_clicked();

注意按钮名称如何与插槽名称匹配,然后是其信号。然后,在实现中,只需设置标签的图像:-

void on_SetImagePushButton_clicked()

     ui-> label_92->setPixmap(":\i_diagram\idiagram3.png"); // image placed in a Qt resource

正确完成后,Qt 将处理按钮与其插槽的连接。

【讨论】:

按名称将信号连接到槽的语法是void on_<object name>_<signal name>(<signal parameters>); @thuga,哎呀,当然是这样。感谢您的关注;O) 我还建议使用clicked 信号而不是released :) @thuga 我想是的,如果快捷方式和 animateClick 也被捕获的话。

以上是关于通过按钮显示图像的主要内容,如果未能解决你的问题,请参考以下文章

如何在按钮上显示图像名称?当我们上传它?

如何在每个 Qlabel PyQt5 中显示两个图像

不在 UIButton 上显示图像

在图像上添加按钮并将图像发送到服务器。从服务器获取图像后,在完全相同的位置显示按钮

如何使带有自定义背景图像的按钮在Android中显示点击动画

单击图片后,图像捕获上的 onActivityResult 不显示确定按钮