¿Las señales de voluntad se desconectarán automáticamente cuando se destruya el objeto de destino? Sin registrar la identificación de señal de g_signal_connect(), ¿puedo eliminar esa señal?¿Cómo desconectar la señal de Gtk?
Respuesta
Si no ha guardado el ID de controlador de señal, puede buscarlo con g_signal_handler_find()
y desconectarlo de la forma habitual, o desconectar los señales que responden a ciertos criterios con g_signal_handlers_disconnect_matched()
o g_signal_handlers_disconnect_by_func()
.
Por supuesto, cuando se destruye el objeto de destino, se eliminan las señales conectadas a él (de lo contrario, habría una fuga de memoria masiva, pero lea la advertencia en g_signal_connect_object). Sin embargo, para llamar al g_signal_handler_disconnect, necesita la identificación del administrador dada por g_signal_connect
y sus amigos.
Puede usar los métodos * handler_block_by_func * y * handler_unblock_by_func *.
Ejemplo (PyGTK):
def on_treeview_fixedexpenses_cursor_changed(self, widget):
self.checkbutton_fixedexpensetax.handler_block_by_func(self.on_checkbutton_fixedexpensetax_toggled)
self.updateCurrentFixedExpense()
self.checkbutton_fixedexpensetax.handler_unblock_by_func(self.on_checkbutton_fixedexpensetax_toggled)
Fuente: http://www.pygtk.org/docs/pygobject/class-gobject.html
- 1. Desconectar objeto de la sesión de NHibernate
- 2. ¿Cómo desconectar TCPClient Totally? (Indy)
- 3. ¿Cómo desconectar un evento anónimo?
- 4. ¿Cómo desconectar el ensamblador integrado de LLVM?
- 5. ¿Cómo manejar la señal SIGABRT?
- 6. Cómo desconectar la solución del control de origen en TFS
- 7. Creación de gráficos en Gtk/Gtk #
- 8. BroadcastReceiver para desconectar auriculares
- 9. Cómo agotar la adquisición de señal GPS
- 10. Cómo capturar la señal de Control + D?
- 11. ¿Cuál es la relación entre GTK, GTK + y GTK2?
- 12. MPMoviePlayerViewController detiene la reproducción al desconectar auriculares
- 13. socket.id de desconectar el cliente?
- 14. ¿Cómo desconectar la pantalla mediante programación en Linux?
- 15. ¿Cómo manejar un esquema de URL personalizado en Webkit GTK?
- 16. Desconectar UTF escapar en JsonBuilder
- 17. ¿Cómo instalar gtk en python2.7?
- 18. ¿Cómo se determina quién emitió la señal?
- 19. Pregunta SIGFPE de la señal
- 20. POSIX comportamiento de la señal
- 21. Declarativo GTK
- 22. Eliminar objetos al desconectar socket.io
- 23. GTK detailed_signal
- 24. Cómo configurar/obtener Gtk "Propiedades de estilo"
- 25. tamaño mínimo de gtk
- 26. Android: Cómo controlar la intensidad de la señal WiFi
- 27. ¿Cómo puedo evaluar la intensidad de la señal GPS? (iPhone)
- 28. Java 7: ¿Reutilización de hilo? (desconectar - reconectar)
- 29. Desconectar la conexión Strophe en la página Descargar
- 30. ¿Cuál es la forma correcta de desconectar un MediaController?