Tastiera virtuale per il browser basato su QtWebKit o come posso ottenere il campo di testo attualmente concentrata?

StackOverflow https://stackoverflow.com/questions/1352409

Domanda

Sto lavorando sull'implementazione di una tastiera virtuale per un browser basato QtWebKit. Sto avendo un sacco di difficoltà a capire come QtWebKit dipinge i controlli all'interno della pagina vera e propria. Inizialmente ho pensato che fossero casi QLineEdit, ma non lo sono. Tuffarsi implementazione sembra che il codice collante tra Qt e WebKit dipinge il campo di testo utilizzando QStyle e QPainter. Purtroppo, io sono molto nuovo per Qt e così io non capisco in quale parte del ciclo di eventi del mouse le presse per questi eventi sono interpretati. Ho trovato Editor :: canEdit () in profondità nello stack di chiamate, e ora posso far apparire la tastiera virtuale quando l'utente fa clic su un campo di testo all'interno della pagina. La tastiera virtuale del previsto un puntatore a un'istanza QWidget, ma Edito :: canEdit () non porta che le informazioni e non riesco a trovare da nessuna parte in cui è esposto un QWidget come esempio. Sono davvero perplesso, tutto il consiglio sarebbe il benvenuto.

Grazie!

È stato utile?

Soluzione

Si potrebbe ottenere più fortuna agganciando la tastiera virtuale nel sistema di metodo di input Qt. Cerca "InputMethod" nel codice sorgente di QtWebKit Api, vale a dire il Qweb *. * File.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top