在pyqt5中单击按钮之前触发浏览按钮方法[重复]

     2023-03-29     254

关键词:

【中文标题】在pyqt5中单击按钮之前触发浏览按钮方法[重复]【英文标题】:Browse button method trigerring before the button is clicked in pyqt5 [duplicate] 【发布时间】:2020-05-26 05:30:32 【问题描述】:

我在 UI 中有浏览按钮,单击该按钮会触发打开文件对话框。我的问题是即使在单击浏览按钮之前打开文件对话框也会触发。下面是我的代码

class GisedifySupportDialog(QtWidgets.QDialog, FORM_CLASS):
def __init__(self, parent=None):
    """Constructor."""
    super(GisedifySupportDialog, self).__init__(parent)
    self.setupUi(self)
    self.img_upload=Upload_Image()
    self.img_upload.setupUi(self.upload_image_dialog)
    self.img_upload.pushButton.clicked.connect(self.browseTheFileAudio(self.img_upload.lineEdit))
def browseTheFileAudio(self,lineedit_name):
    self.fileName = QtWidgets.QFileDialog.getOpenFileName(self, "Browse for the file", os.getenv("HOME"))
    self.fileName=self.fileName
    lineedit_name.setText(str(self.fileName))
    return self.fileName

为什么 briwseTheFileAudio 函数在按钮被点击之前就被触发了?

【问题讨论】:

【参考方案1】:

当你说:

self.img_upload.pushButton.clicked.connect(self.browseTheFileAudio(self.img_upload.lineEdit))

您正在调用函数browseTheFileAudio,并且该函数的返回值被传递给pushButton.clicked.connect。那不是你想要的。您想将函数对象(而不是实际调用它)传递给pushButton.clicked.connect,您只想在单击按钮时触发它。这就是绑定回调的方式。

鉴于您的回调也需要一个参数,您可以使用 lambda:

self.img_upload.pushButton.clicked.connect(lambda le=self.img_upload.lineEdit: self.browseTheFileAudio(le))

【讨论】:

关于如何访问传递给 lambda 文件的值的任何建议?因为我得到了 le 的布尔值 @User123 如果le 是布尔值,则意味着self.img_upload.lineEdit 是布尔值。确认您没有在代码中的其他位置意外地将该小部件引用替换为布尔值。

在jquery中触发按钮单击的所有可能方法

】在jquery中触发按钮单击的所有可能方法【英文标题】:Allpossiblewaystotriggerabuttonclickinjquery【发布时间】:2013-02-2022:57:51【问题描述】:我想知道在jQuery中触发按钮的所有可能方法,我试过了,但它不起作用,$("#<%=btA.ClientID%&g... 查看详情

如何知道firefox中是否单击了刷新按钮或浏览器后退按钮[重复](代码片段)

...ckinbrowser[duplicate]6个答案 如何在Firefox中了解是单击了刷新按钮还是单击了浏览器后退按钮...对于这两个事件,onbeforeunload()方法是一个回调。对于IE我正在这样处理:functionCallbackFunction(event)i 查看详情

如何在 WPF 中停止方法(通过按钮单击触发)

】如何在WPF中停止方法(通过按钮单击触发)【英文标题】:Howtostopamethod(triggeredbybuttonclick)inWPF【发布时间】:2021-06-1009:58:03【问题描述】:我的WPF中有一个私有asyncvoidButton_Click方法,它运行一个非常复杂的SQL查询,可以运行几... 查看详情

在jQuery中上传之前单击预览按钮时显示图像[重复]

】在jQuery中上传之前单击预览按钮时显示图像[重复]【英文标题】:DisplayimagewhenpreviewbuttonisclickbeforeuploadinjQuery[duplicate]【发布时间】:2017-05-1209:36:07【问题描述】:我有一个这样的HTML表单:<formid="myForm"name="myform"action="register/i... 查看详情

PyQt5按钮单击不使用功能[重复]

】PyQt5按钮单击不使用功能[重复]【英文标题】:PyQt5ButtonClickedNotWorkingwithFunction[duplicate]【发布时间】:2021-11-0312:03:30【问题描述】:当我单击带有以下源代码的按钮时,我正在尝试使用函数:fromPySide2.QtWidgetsimportQApplicationfromui_i... 查看详情

在 PyQt5 中使用浏览按钮添加适当的 FileDialog

...下代码。我想添加一个像小图片一样的小部件,这样当我单击按钮时,我可以浏览CSV文件,并且该路径显示在LineEdite中。我需要在复选框下方的ExperimentInfoQGroup 查看详情

在 iframe 内触发按钮单击 [重复]

】在iframe内触发按钮单击[重复]【英文标题】:Triggerabuttonclickinsideaniframe[duplicate]【发布时间】:2015-02-0414:15:37【问题描述】:这是iframe代码:<divid="OutDiv"class="outerdiv"><iframesrc="http://beta.sportsdirect.bg/checkout/onepage/"id="Inne 查看详情

超链接上的触发按钮单击[重复]

】超链接上的触发按钮单击[重复]【英文标题】:FireButtononHyperlinkClick[duplicate]【发布时间】:2018-03-2618:20:49【问题描述】:我的表单有两个按钮:delete和play。目前,用户必须使用表单底部的提交按钮来执行这些任务中的任何一... 查看详情

单击表单按钮时,Asp-Page-Handler 未触发 Razor 模型中的方法

】单击表单按钮时,Asp-Page-Handler未触发Razor模型中的方法【英文标题】:Asp-Page-HandlernotfiringMethodinRazorModelwhenFormButtonisClicked【发布时间】:2019-10-2712:28:38【问题描述】:首先请知道我已经用谷歌搜索并尝试了我找到的所有内容。... 查看详情

如何确保整个标签在窗口中可见[重复]

...这是我到目前为止的代码,并且还附上了窗口的图像->单击按钮之前:点击按钮后:fromPyQt5impo 查看详情

在pyqt5中单击登录按钮时获取小部件未定义错误

】在pyqt5中单击登录按钮时获取小部件未定义错误【英文标题】:Gettingwidgetisnotdefinederrorwhenclickingloginbuttoninpyqt5【发布时间】:2021-07-1509:06:45【问题描述】:我在制作按钮以打开不同的.ui文件时遇到问题,但我一直遇到一个问题... 查看详情

PyQt5 - 第二个窗口中的按钮在单击时不执行操作

】PyQt5-第二个窗口中的按钮在单击时不执行操作【英文标题】:PyQt5-buttoninsecondwindowisnotdoingactiononclick【发布时间】:2020-07-1316:30:21【问题描述】:您好,我有2个python文件:第一个叫\'first.py\',第二个叫\'second.py\':我的程序应该... 查看详情

如何在 PyQt5 GUI python 中单击按钮时绘制方形图

】如何在PyQt5GUIpython中单击按钮时绘制方形图【英文标题】:HowtoplotsquarifygraphonbuttonclickinPyQt5GUIpython【发布时间】:2018-04-1817:49:26【问题描述】:我是python初学者,正在使用PyQt5创建GUI,但遇到了问题,请帮忙。这是一个方形图... 查看详情

PyQt5,单击按钮后如何打开新窗口

】PyQt5,单击按钮后如何打开新窗口【英文标题】:PyQt5,howtoopennewwindowafterclickQButton【发布时间】:2019-01-1006:46:17【问题描述】:我点击了按钮平台类型,但Ui_Form没有显示我尝试了exec_(),但进程以exitcode-1073740791(0xC0000409)结束我... 查看详情

如何更改在pyqt5 python3中单击按钮时显示的.ui文件

】如何更改在pyqt5python3中单击按钮时显示的.ui文件【英文标题】:Howtochange.uifilethatisdisplayedonbuttonclickinpyqt5python3【发布时间】:2020-04-0510:48:07【问题描述】:我想更改按钮单击时的显示。我当前的代码:importsysfromPyQt5importQtWidgets... 查看详情

PyQt5 - 关闭应用程序 bec。 .value() 方法的错误[重复]

...问题描述】:每当我在我的PyQt5应用程序的第二个窗口中单击一个按钮时,该按钮应该只在GUI中打印QDateEdit的值,它会以以下行关闭:“进程以退出代码-1073740791( 查看详情

按钮单击不会在 javascript 中触发

】按钮单击不会在javascript中触发【英文标题】:Buttonclicknotfireinjavascript【发布时间】:2016-04-0508:12:24【问题描述】:这是我的代码“btnviewreport1”在页面加载后没有触发<scripttype="text/javascript">$(document).ready(function()varhfDoYouWant... 查看详情

如何在执行segue之前执行按钮动画[重复]

】如何在执行segue之前执行按钮动画[重复]【英文标题】:Howtoperformbuttonanimationbeforeperformingsegue[duplicate]【发布时间】:2018-12-2717:05:01【问题描述】:在我的主屏幕中,我有一个startGame按钮,按下该按钮时会触发动画(sender.pulsate())... 查看详情