【问题标题】:How do you create a QPushButton in the MainWindow?如何在 MainWindow 中创建 QPushButton?
【发布时间】:2020-02-25 12:24:17
【问题描述】:
QPushButton* m_button = new QPushButton();

每当我尝试像这样创建QPushButton 时,它似乎是在一个新的单独窗口中创建的。但是,我希望在主窗口中创建按钮,但我不知道如何执行此操作(不使用 Qt 设计器)。

【问题讨论】:

  • 这取决于您真正想要实现的目标。最简单的方法是在主窗口中添加一个按钮,例如:setCentralWidget(m_button);,假设您从主窗口类调用该函数。
  • QPushButton* m_button = new QPushButton(this);
  • setCentralWidget 方法运行良好。非常感谢,vahancho!

标签: qt qpushbutton mainwindow


【解决方案1】:

您需要将 MainWindow 设置为父窗口

试试这个:

QPushButton* m_button = new QPushButton(this)

【讨论】:

  • 当我尝试您的代码时,我收到错误:“没有匹配的构造函数用于初始化 'QPushButton'
  • this 必须引用 QWidget。由于 QMainWindow 是由 QWidget 派生的,它应该可以工作
  • 我的代码如下所示: MainwindowInstance{ public: MainwindowInstance();主窗口 w;当我尝试通过以下代码从另一个类在我的 MainWindow 中创建 QPushButton 时,Button 总是在另一个窗口中打开。 MainwindowInstance* instance = new MainwindowInstance(); QPushButton *m_button = new QPushButton(&instance->w);还有什么建议吗?
猜你喜欢
  • 2022-01-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多