Pregunta

En la biblioteca QT4, se supone que QFileSystemWatcher emite un " fileChanged " señal cuando se cambia el archivo observado.

Sin embargo, bajo ruby1.8 " fileChanged " se informa como "No hay tal señal". El FileSystemWatcher está claramente allí. Puedo agregarle archivos y volver a leer la propiedad de los archivos; es solo que la señal cambiada no parece estar definida.

FileSystemWatcher no está incluido en ninguno de los ejemplos instalados.

Aquí está mi línea de código que intenta vincular la señal:

connect(self, SIGNAL('fileChanged()'), self, SLOT('mywatcher_changed()') )

" self " es una clase derivada de Qt :: FileSystemWatcher.

¿Se implementa esto y, de ser así, cómo se usa?

Gracias.

¿Fue útil?

Solución

El contenido de la señal y la ranura debe ser la firma del método C ++, incluidos los tipos de argumentos. Por eso no se encuentra su señal.

Probablemente, debería ser:

connect(self, SIGNAL('fileChanged( QString path )'), 
     self, SLOT('mywatcher_changed( QString path )') )

o

connect(self, SIGNAL('fileChanged( const QString & path )'), 
     self, SLOT('mywatcher_changed( const QString & path )') )

No estoy seguro de cuál es el correcto porque no recuerdo si necesita incluir el "const" y el & amp; & amp; " en el nombre de la señal.

Consulte para obtener más información: qtruby doc

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top