Cómo conectar el menú haga clic con la acción en Qt Creator?


Soy completamente nuevo en Qt.

Empecé con una nueva aplicación GUI Qt4.

Usando el diseñador, he creado un menú así:

File
 - Exit

¿Cómo obtengo una acción asociada con el elemento de menú?

Encontré algo llamado el 'Editor de señales y ranuras', pero no tengo idea de cómo usarlo.

Author: Nathan Osman, 2010-04-28

3 answers

Haga clic en el signo más verde después de seleccionar el Editor de ranuras de señales. Te dará 4 campos para rellenar. Para el remitente se selecciona lo que está creando la señal. Por ejemplo, ActionExit podría ser el nombre que creó para el elemento de menú exit. Es probable que se haga clic en la señal(). El receptor es generalmente la clase que usted creó que tiene todos sus métodos. La ranura es el método que creó en la clase que desea ejecutar. Por ejemplo:

actionExit clicked() <nameOfClass> exitGame()

Espero que esto ayudar.

 47
Author: Isawpalmetto,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-03-28 21:33:23

Me las arreglé para hacer esto de una manera que parece mucho más fácil. En la ventana del Editor de acciones de Qt Creator, veo una entrada para el elemento de menú en el que hice clic. I rt-haga clic en esa entrada y seleccione " Ir a ranura..."luego selecciono triggered () en la ventana emergente y hago clic en OK. Qt Creator me salta al código que acaba de agregar.... Puse una declaración qDebug allí y funciona!

 41
Author: user347524,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-05-21 22:30:49

Vaya al Editor de Ranuras y luego haga clic en la pestaña Editor de acciones en el bottem izquierdo. Hay todas las acciones del menú en la lista.

El clic derecho -> ir a Ranura proporciona una función de ranura.

 2
Author: Darkproduct,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-03-31 02:39:55