QT Menu如何创建新窗口?

Posted

技术标签:

【中文标题】QT Menu如何创建新窗口?【英文标题】:QT Menu how to create a new window? 【发布时间】:2011-07-19 07:58:57 【问题描述】:

我在 QT Creator 中工作。

我想提一下,我是这个软件的初学者。我成功创建了一个菜单,其中包含:编辑和打开。单击菜单栏中的“打开”时,我想创建一个新窗口。到目前为止,当我按下 Open 时,我成功地在 QMessageBox 中打印了一条消息。链接 Open clicked with a new window 的代码是什么?是否可以以某种方式在 mainwindow.ui 中拖放一个新窗口,然后将其与 Open on action Open_activated() 链接?

THX 。欣赏

P.S 我正在使用 UBUNTU/C++ 语言工作

【问题讨论】:

【参考方案1】:

this previous question 已经回答了大部分问题。它留下了一部分,即如何调用该插槽。

嗯,你回答说:菜单条目“打开”是QAction。您可以 connect 将该操作发送到您刚刚创建的插槽。

【讨论】:

【参考方案2】:

回答这个问题可能为时已晚,但由于我也是一个初学者并且很难弄清楚这一点,我想分享一个对我有用的解决方案,据我所知,这是最简单的解决方案之一对于初学者。

关注此link。将来该链接可能不存在,因此我正在写一个详细版本,尽可能详细,因为我认为对于绝对初学者(如我自己)来说它可能非常有用。

    默认主窗口.cpp

    转到“mainwindow.ui”(或任何 .ui 文件)

    在窗口外右键单击并激活“动作编辑器”(如果尚未激活):

    右键单击窗口并创建“菜单栏”,然后双击“在此处键入”,您可以将其重命名为“打开”或其他内容,然后下拉另一个框,您可以在其中再次键入你想要的名字,让我们说“消息”。

    创建菜单项“消息”后,相应的项目将出现在“动作编辑器”中

    右键单击动作编辑器中的“消息”,然后单击“转到插槽”,这将引导您进入 mainwindow.cpp 中的特定插槽:

    您可以在此处创建一个小窗口,其中包含您想要显示的任何消息。

[![Window creating code]11 等在这里。]12

****不要忘记包含“QTextEditor”,转到 mainwindow.h 和#include“

在编译和执行时我们会看到:

【讨论】:

以上是关于QT Menu如何创建新窗口?的主要内容,如果未能解决你的问题,请参考以下文章

创建一个即使在全屏模式下也保持在顶部的新窗口(Linux 上的 Qt)

Qt - 打开一个窗口的单个实例

Qt学习--信号与槽(多窗口的实现)

在 Qt 中嵌入 PyQtGraph 而不生成新窗口

WPF 打开新窗口 如何设置 焦点还在原来的窗口 谢谢

QT/QML 从主窗口重新打开新窗口