QLineWidget returnPressed 信号不工作
QLineWidget returnPressed signal not working
我在 QWidget
里面有一个 QLineWidget
是一个标签 (QTabWidget
'page'),我正在尝试使用 returnPressed
信号, 但它不工作,以前它可以工作,但我完全改变了代码结构,现在不行了。
应用程序输出QMetaObject::connectSlotsByName: No matching signal for on_urlEntry_returnPressed()
小工具 class header: http://pastebin.com/GbMNmjUD
小部件 class 来源:http://pastebin.com/chdkhBRy
为什么要在选项卡中创建新的小部件作为 Browser
的子项?使用 this
而不是 Browser
。
在您的代码中,标签的子元素属于标签的父元素。
首先,您应该提供一个最小的工作示例,而不是那一堆代码。
其次,如果您只是使用调试器,您会注意到警告是在第二次调用 QMetaObject::connectSlotsByName
之后出现的。这意味着 BrowserTab
对象没有名为 urlEntry
的子对象和名为 returnPressed
的信号。发生这种情况是因为您创建的所有控件小部件都成为 BrowserTab::setupUi
中传递的 Browser
对象的子对象,而不是 BrowserTab
.
我在 QWidget
里面有一个 QLineWidget
是一个标签 (QTabWidget
'page'),我正在尝试使用 returnPressed
信号, 但它不工作,以前它可以工作,但我完全改变了代码结构,现在不行了。
应用程序输出QMetaObject::connectSlotsByName: No matching signal for on_urlEntry_returnPressed()
小工具 class header: http://pastebin.com/GbMNmjUD
小部件 class 来源:http://pastebin.com/chdkhBRy
为什么要在选项卡中创建新的小部件作为 Browser
的子项?使用 this
而不是 Browser
。
在您的代码中,标签的子元素属于标签的父元素。
首先,您应该提供一个最小的工作示例,而不是那一堆代码。
其次,如果您只是使用调试器,您会注意到警告是在第二次调用 QMetaObject::connectSlotsByName
之后出现的。这意味着 BrowserTab
对象没有名为 urlEntry
的子对象和名为 returnPressed
的信号。发生这种情况是因为您创建的所有控件小部件都成为 BrowserTab::setupUi
中传递的 Browser
对象的子对象,而不是 BrowserTab
.