TextBoxissa on jo valmiiksi vilkkuva tekstikohdistin, mutta WinApin avulla sellaisen voi luoda mille tahansa objektille, kunhan sillä on hwnd. Tässä esimerkissä Formille itselleen luodaan tekstikohdistin ja sille voidaan kirjoittaa aivan kuin TextBoxiin. Yksi puute ohjelmassa kuitenkin on: kirjoitettavassa tekstissä ei voi palata takaisinpäin.
Private Declare Function CreateCaret Lib "user32" (ByVal hwnd As Long, ByVal hBitmap As Long, ByVal nWidth As Long, ByVal nHeight As Long) As Long Private Declare Function ShowCaret Lib "user32" (ByVal hwnd As Long) As Long Private Declare Function SetCaretPos Lib "user32" (ByVal x As Long, ByVal y As Long) As Long Private Sub Form_GotFocus() CreateCaret hwnd, 0, 1, TextHeight("A") \ 15 ShowCaret hwnd SetCaretPos 0, 0 End Sub Private Sub Form_KeyPress(KeyAscii As Integer) Print Chr$(KeyAscii); SetCaretPos CurrentX \ 15, CurrentY \ 15 End Sub
ihan kätevä... varsinkin peleissä?
Aihe on jo aika vanha, joten et voi enää vastata siihen.