V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ericgui
V2EX  ›  Qt

请教一个问题:关于 slot 和 signal 的 connect, 不用 connect, slot 也能被调用

  •  
  •   ericgui · 2021-04-13 12:19:14 +08:00 · 1064 次点击
    这是一个创建于 1080 天前的主题,其中的信息可能已经有所发展或是发生改变。
    比如,你在 UI 上选了一个按钮,点击右键, 然后选择 go to slot,头文件里就加了一个 private slot
    mainwindow.cpp 文件里,你就可以具体来实现这个 slot

    然后 build 的运行,点击这个按钮,这个 slot 就被调用了


    但是,如果你自定义一个 slot,你必须用 connect 才行


    所以,为什么通过点击右键,选择 go to slot,得到的,就不用 connect? 是因为这 slot 的命名有特殊的规则吗?一般这种,都是 on_pushButton_pressed 这样的
    第 1 条附言  ·  2021-04-13 15:40:08 +08:00
    感谢 4 楼的回复,从源码级别解释了

    这里有个通俗版本:
    https://stackoverflow.com/a/49892587/12061669
    5 条回复    2021-04-13 15:26:21 +08:00
    imn1
        1
    imn1  
       2021-04-13 14:30:55 +08:00
    不懂 C++,只写过 pyqt
    每个控件都有内置响应,大部分没有操作,用 connect 是指向一个指定操作,但也可以继承覆盖内置的响应事件进行操作

    例如按钮内置应该有点击、按下、移过、tirgger(这个不知中文叫什么)……等等

    其实我也没完全理解你说的,只是 v2 回复 qt 的人不多,我就猜一下抛砖引玉
    ericgui
        2
    ericgui  
    OP
       2021-04-13 15:08:00 +08:00
    @imn1 谢谢回复

    qt 似乎真的没多少人用么?

    我学 qt 其实想用这个作为切入点,学点 c++

    imn1
        3
    imn1  
       2021-04-13 15:10:20 +08:00
    @ericgui #2
    很多人用,只是来这里的少,或者说这里用 qt 的人没那么“闲”,🐶
    play78
        4
    play78  
       2021-04-13 15:22:50 +08:00
    @ericgui 是的,有约定。
    看下这个:www.cnblogs.com/alleyonline/p/4908438.html
    ericgui
        5
    ericgui  
    OP
       2021-04-13 15:26:21 +08:00
    @play78 非常感谢答疑解惑!!!!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   994 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 19:50 · PVG 03:50 · LAX 12:50 · JFK 15:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.