Du kan opprette et skjermtastatur med Microsoft Visual Basic -programmet , som kan lastes ned fra Microsofts nettside gratis . Visual Basic er en ganske forståelig program for folk flest. Programmet er designet for å bygge trygge og objektorientert applikasjoner. Dette programmet gir utviklere en mulighet til å målrette web , mobile enheter og Windows . Skjermtastaturet opprettet av Visual Basic kan du skrive i ulike programmer på datamaskinen . Instruksjoner
en
start Microsoft Visual Basic.
2
Klikk på " New Project" rett under "File " fanen ligger på verktøylinjen.
3
Highlight " Windows Form Application " i "New Project " pop -up -boksen.
4
Endre navnet på prosjektet til " skjermtastaturet " eller noe lignende for å lettere identifisere prosjektet.
5
Klikk "OK" helt til høyre hjørne av "New Project " pop -up -boksen. En tomt skjema merket " Form1 " skal vises i løpet av få sekunder
6
Klikk på " Properties Box" som ligger på høyre side av skjermen og markere " Navn "-boksen ; . Endre navnet fra " Form1 " til " frmMain " .
7
Highlight " FormBorderStyle " og endre det nåværende navnet til " FixedToolWindow " .
8
Highlight " Size" og endre nåværende størrelse til " 390208 " .
9
Highlight "Tekst" og endre navnet til "Tastatur" .
10
Highlight " øverste " og endre til "true" .
11
Utvid ( + ) din " Common Controls " på " Toolbox " på venstre side av skjermen, og velg " ComboBox " komponent .
12
Draw en ComboBox i " Form" boksen, som skal være merket som "Tastatur" .
13
Klikk på ComboBox og deretter gå tilbake til " Properties Box" som ligger på høyre side av skjermen . Marker " Name" i "Properties Box" og endre navnet til " cboWindows " .
14
Highlight " DropDownStyle " og endre navnet til " DropDownList " og høyre -klikk på " Form" i " Solution Explorer " og velg " Vis kode"
15
Skriv inn følgende API Metoder og erklæringer under "Public Class frmMain " : .
' API Metoder
< p> Public Declare Function IsWindowVisible Lib " user32.dll " _
Alias " IsWindowVisible " ( ByVal hwnd As Integer ) As Boolean
Public Declare Function GetWindow Lib " user32.dll " _
Alias " GetWindow " ( ByVal hwnd As Integer , _
ByVal wCmd As Integer ) As Integer
Public Declare Function GetWindowLong Lib " user32.dll " _
< p > Alias " GetWindowLongA " ( ByVal hwnd As Integer , _
ByVal nIndex As Integer ) As Integer
Public Declare Function GetParent Lib " user32.dll" _
Alias " GetParent " ( ByVal hwnd As Integer ) As Integer
Public Declare Function SetForegroundWindow Lib " user32.dll "_
Alias " SetForegroundWindow "( ByVal hwnd As Integer ) As Integer
< p > ' Erklæringer
Private RowOne As String ( ) = { " ` "," 1 "," 2 "," 3 "," 4 "," 5 "," 6 "," 7 "," 8 " , " 9 "," 0 " ," - "," = "}
Private RowTwo As String ( ) = { " q "," w " , " e " , " r "," t " , " y "," u " ," i " , " o " , " p " , " [" , "] "}
Private RowThree As String ( ) = { " a " , " s "," d " , " f "," g " , " h "," j " , " k " , " l " , ", " , " ' "," # " }
Privat RowFour As String ( ) = { "\\ ", " z ", " x " , "c ", " v" , "b ", " n" , "m" , " ", " . ", " /" }
Private CapsLock som ny avmerkingsbokser
Private Key, Special As String
Private Windows som ny ArrayList
Private Vindu As IntPtr
16
Angi API Metoder og erklæringer under "Event Handlers ":
' hendelseshåndterere
Private Sub Key_Special ( ByVal sender As Button, _
ByVal e Som System.EventArgs )
p Hvis Special = "" Then
Special = Sender.Tag
Else
Special = ""
< p> End If
End Sub
Private Sub Key_Click ( ByVal sender As Button, _
ByVal e Som System.EventArgs )
Key = Avsender . Tag
p Hvis Viktige = "{ SPACE }" Så Key = "" "Konverter { SPACE } til Space
p Hvis Window < > 0 Then
SetForegroundWindow ( vindu)
SendKeys.SendWait (Special & IIf ( Capslock.Checked _
og Ikke Special < > " ^ ", _
UCase ( Key ) , Key ) )
SetForegroundWindow (Vindu )
End If
End Sub
17
Tast inn dette under "Private metoder " : en
' Private Metoder
Private Function IsActiveWindow ( ByVal hWND As Integer ) As Boolean
Dim isowned Som Boolean
Dim stil As Integer
isowned = GetWindow ( hWnd , 4 ) < > 0
stil = GetWindowLong ( hWnd , -20 )
p Hvis ikke IsWindowVisible ( hWnd ) Then return false ' Ikke synlig
< p > Hvis GetParent ( hWnd ) < > 0 Then return false ' Har Parent
p Hvis (Style And & H80 ) < > 0 og Ikke isowned Deretter return false ' Er Tooltip
p Hvis (Style And & H40000 ) = 0 og isowned Deretter return false ' Har Eier
p Hvis Process.GetCurrentProcess.MainWindowHandle = hWnd deretter tilbake False
return true ' Window Gyldig
End funksjon
Private Sub KeyboardButton ( ByVal Bredde As Integer , ByVal Høyde As Integer , _
ByVal Top As Integer , ByVal Venstre As Integer , _
Valgfritt ByVal Tekst As String = "" , _
Valgfritt ByVal Tag As String = "" , _
Valgfritt ByVal Special As Boolean = False )
Dim Button Som ny knapp
< p> Button.Size = Ny Størrelse ( bredde, høyde )
Button.Location = Ny Point (Left , Top )
Button.Text = Tekst
Button.Tag = Tag
p Hvis Special Deretter
AddHandler button.Click , AddressOf Key_Special
Else
AddHandler button.Click , AddressOf Key_Click
End If
Controls.Add ( Button )
End Sub
18
Tilbake til design Vis ved å velge " Design "-kategorien eller høyreklikke på " Vis designer " alternativet som ligger i " Solution Explorer" for frmMain . Innenfor Form Vist , dobbeltklikker du på skjemaet ( frmMain )
19
Skriv inn følgende i " frmMain_Load ( )" sub : .
Dim Col As Integer
' Row En
For Col = 0 til 12
KeyboardButton ( 25 , 25, 40, Col * 25 + 4 , _
RowOne ( Col ) , RowOne ( Col ) )
Neste
KeyboardButton ( 50 , 25, 40, Col * 25 + 4, " BKSP ", " { TILBAKE }" )
' Row to
KeyboardButton ( 36 , 25, 66, 4, " Tab ", " { TAB }" )
For Col = 0 til 11
KeyboardButton ( 25 , 25 , 66, Col * 25 + 40 , _
UCase ( RowTwo ( Col ) ) , RowTwo ( Col ) )
Neste
KeyboardButton ( 39 , 25, 66, 36 + Col * 25 + 4, " ↵ ", " { Enter }" )
' Row Tre
CapsLock.Appearance = Appearance.Button
CapsLock.Size = Ny størrelse ( 48 , 25)
CapsLock.Location = Ny Point ( 4 , 92 )
CapsLock.Text = "Caps "
Controls.Add ( CapsLock )
For Col = 0 til 11
KeyboardButton ( 25 , 25, 92 , Col * 25 + 52 , _
UCase ( RowThree ( Col ) ) , RowThree ( Col ) )
Neste
KeyboardButton ( 27 , 25, 92 , 48 + Col * 25 + 4 , "", " { Enter }" )
' Row Four
KeyboardButton ( 38 , 25, 118 , 4, "Shift ", " +" eller sann)
For Col = 0 til 10