avec Qt dans ton KHTMLPart tu cree une fonction :
void KHTMLPart::focusInEvent{QFocusEvent *e)
{
if(e->gotFocus())//pourrait etre enlevé car c forcément du in mais bon
emit ihavethefocus(TRUE);
else
e->ignore();
}
void KHTMLPart::focusOutEvent{QFocusEvent *e)
{
if(e->lostFocus())//pourrait etre enlevé car c forcément du in mais bon
emit ihavethefocus(FALSE);
else
e->ignore();
}
tu les déclares dans ton .h -ce sont pas des slots-, tu crée un signals void ihavethefocus(bool); (tu peux aussi faire qu'un signal ihavethefocus(), ne surchargé que focusinevent, mais bon là tu sais aussi quand il le perd
ensuite tu connecte a partir d'une autre class le signal ihavethefocus de KHTMLPart à un slot de la class de ton plugin
(ca marche si bien sûr khtmlpart découle de QWidget, et que le plugin découle de QObject
voila mais lit la class QEvent dont tout les évenements découlent t'apprendra bcp
# Re: event filtering avec Qt/KDE
Posté par blackshack . En réponse au journal event filtering avec Qt/KDE. Évalué à 2.
void KHTMLPart::focusInEvent{QFocusEvent *e)
{
if(e->gotFocus())//pourrait etre enlevé car c forcément du in mais bon
emit ihavethefocus(TRUE);
else
e->ignore();
}
void KHTMLPart::focusOutEvent{QFocusEvent *e)
{
if(e->lostFocus())//pourrait etre enlevé car c forcément du in mais bon
emit ihavethefocus(FALSE);
else
e->ignore();
}
tu les déclares dans ton .h -ce sont pas des slots-, tu crée un signals void ihavethefocus(bool); (tu peux aussi faire qu'un signal ihavethefocus(), ne surchargé que focusinevent, mais bon là tu sais aussi quand il le perd
ensuite tu connecte a partir d'une autre class le signal ihavethefocus de KHTMLPart à un slot de la class de ton plugin
(ca marche si bien sûr khtmlpart découle de QWidget, et que le plugin découle de QObject
voila mais lit la class QEvent dont tout les évenements découlent t'apprendra bcp