Does anyone know how to clear the contents of a QLineEdit when a user
sets focus to it (ie. clicks it, presses the tab key repeatedly,
etc.)?
>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<
Subclass KLineEdit (which you`re using instead of QLineWidget, right?)
and reimplement focusInEvent() to call clear().
But why are you trying to do this? In general it seems like a bad
idea. If it`s to implement some kind of instructional message, see
QLineEdit::setPlaceholderText() or KLineEdit::setClickMessage().
Parker
You don't have to subclass it, just connect some slot to
void QApplication::focusChanged ( QWidget * old, QWidget * now )
Check if "new" is you lineedit and do whatever you must.
I however agree that clearing is likely a bad idea (assume you just wanted to
fix a one char typo) - you might want to selectAll() instead?
Cheers,
Thomas
This is exactly what I need. Thank you.
Do you know how to centre the ClickMessage text? If I set the
alignment of the text, only the text that the user types in is aligned
and not the ClickMessage text.
Strictly speaking I think what you want to do is more properly part of the
style, and not part of the application itself. ;)
i.e. it is not centered because the user's style doesn't center placeholder
text.
Regards,
- Michael Pyne