xiiing
V2EX  ›  问与答

用 Qt 些了一个小程序,请问在 toolbar 上点右键,关闭 toolbar,会触发一个什么事件?信号和槽该怎么写?

  •  1
     
  •   xiiing · Jul 31, 2014 · 6106 views
    This topic created in 4488 days ago, the information mentioned may be changed or developed.
    我这么写,一点反应都没有
    connect(toolbar, SIGNAL(closeEvent()), this, SLOT(print()));
    我想在关闭的时候同步更新menu的菜单,调了半天都没调出来。
    谢谢拉
    9 replies  •  2014-07-31 16:36:33 +08:00
    lukic
    lukic
    Jul 31, 2014
    1
    还是把源码贴上来吧。
    levie
    levie
    Jul 31, 2014
    2
    QToolBar::visibilityChanged(bool)?
    lukic
    lukic
    Jul 31, 2014❤️1
    4
    @xiiing closeEvent() 有声明这个signal?
    xiiing
    xiiing
    OP
    Jul 31, 2014
    5
    @lukic 是没有,但是我想达到类似这样的效果,不知道怎么才能在关闭toolbox的时候触发print行为。
    lukic
    lukic
    Jul 31, 2014❤️1
    6
    @xiiing 没有声明怎么会有效, @levie 给出了正解。另外你为何要连接到 qApp?你的print 声明在类 toolbar里。
    vopfly
    vopfly
    Jul 31, 2014❤️1
    7
    override
    virtual void closeEvent(QCloseEvent *event)
    xiiing
    xiiing
    OP
    Jul 31, 2014
    8
    @lukic
    1.qApp是参考http://www.zetcode.com/gui/qt4/menusandtoolbars/这个写的,初学Qt,不太熟悉这个。
    2.改成connect(toolbar, SIGNAL(visibilityChanged()), this, SLOT(quit()));好像还是不行。提示Object::connect: No such signal QToolBar::visibilityChanged()
    visibilityChanged是4.7的,我现在用的是4.6.2,但是如果改成其它的4.6的signal,也是同样的提示。算了,先不解决这个问题了。
    再次感谢!
    Scumer
    Scumer
    Jul 31, 2014
    9
    哇 这个地方还有人问技术问题的
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1727 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 16:21 · PVG 00:21 · LAX 08:21 · JFK 11:21
    ♥ Do have faith in what you're doing.