El día 2 de agosto de 2013 11:53, kausdiv <kaus...@gmail.com> escribió: > Gracias Chema por contestar. > > Verás, yo pongo el cursor al principio del texto manualmente, es decir con > el ratón. > el procedimiento de búsqueda que uso es este: > ---------------------------------------- > # "txBusca" es un campo QlineEdit y "texto" el QTextEdit donde busco. > > def buscar(self): > t = QtGui.QString(self.txBusca.text()) > # QtGui.QMessageBox.about(self, 'busca', t) > if self.texto.find(self, t, 0): > QtGui.QMessageBox.about(self, "Encontrado", str(t))
La API es algo confusa. Por regla general, si ves un argumento 'self' debes interpretarlo como llamada a un método de la instancia. Por otro lado, el método QLineEdit.text devuelve una QString por lo que no precisa que la conviertas: def buscar(self): text = self.txBusca.text() # QtGui.QMessageBox.about(self, 'busca', t) if self.texto.find(text, 0): QtGui.QMessageBox.about(self, "Encontrado", text) En la última línea, en este caso sí que se pasa a QMessageBox.about 'self' para que actúe como "parent" del diálogo. > ............................................... > > No se si lo estoy haciendo mal. > > Saludos. > > El 01/08/2013 3:39, Chema Cortes escribió: > >> Si hubieras puesto algo del código que no te funciona se podría >> averiguar qué es lo que pasa. Saber qué versión de Qt, PyQt y python >> también ayudaría. >> >> QTextEdit posee un cursor QTextCursor que debería encargarse del >> posicionamiento y resaltado del texto. El problema es que el método >> .find() siempre busca adelante, por defecto, a partir de la posición >> actual del cursor. Previsiblemente, QTextEdit estará apuntando al >> final del texto que estabas introduciendo. >> >> Solución tonta: antes de buscar posiciona el cursor de edición al >> inicio del QTextEdit. >> Solución buena: mírate la documentación de los métodos >> QTextEdit.textCursor , QTextEdit.setTextCursor, >> QTextCursor.setPosition,.... >> >> El día 31 de julio de 2013 17:37, kausdiv <kaus...@gmail.com> escribió: >>> >>> Hola de nuevo. >>> >>> Estoy tratando de hacer un procedimiento que busque un texto dentro de >>> un >>> QTextEdit. El texto a buscar se introduce en QLineEdit. >>> >>> Lo que pretendo es que busque y posicione el cursor en el texto >>> encontrado. >>> >>> He probado con "find" pero no consigo nada y lo que he encontrado en >>> google >>> no me ha servido de mucho. >>> >>> ¿ Alguien tiene un ejemplo en el que basarme ? >>> >>> Gracias de antemano. >>> _______________________________________________ >>> Python-es mailing list >>> Python-es@python.org >>> http://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >> >> >> > > _______________________________________________ > Python-es mailing list > Python-es@python.org > http://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ -- Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": http://ch3m4.org/blog Buscador Python Hispano: http://ch3m4.org/python-es _______________________________________________ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/