Kirjautuminen

Haku

Tehtävät

Keskustelu: Koodit: VB6: Tekstikohdistimen luominen

Antti Laaksonen [28.04.2002 15:37:39]

#

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

miiro [09.11.2003 16:37:33]

#

ihan kätevä... varsinkin peleissä?

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta