Skining DTextEntry without breaking it?

Can someone give me some information on how I can skin it? I Have tried overriding pain hook but I have a problem that the text is not correct in a sense that if you click in the middle of a word the carrot would be placed somewhere else, can anyone give me some help on this , Thank you.

EDIT

Or can I change the foreground and background color/, font , and text size?

Panel:DrawTextEntryText

DLabel/SetFont

This is some really basic stuff, did you try to look it up yourself?