Come fare una tastiera su schermo in Visual Basic

August 15

È possibile creare una tastiera su schermo con il programma di Microsoft Visual Basic, che può essere scaricato dal sito Web di Microsoft per libero. Visual Basic è un programma abbastanza comprensibile per la maggior parte delle persone. Il programma è stato progettato per la creazione di applicazioni sicure e orientate agli oggetti. Questo programma offre agli sviluppatori la possibilità di indirizzare i Web, dispositivi mobili e di Windows. La tastiera su schermo creato da Visual Basic consente di digitare in diverse applicazioni sul computer.

istruzione

1 Avviare Microsoft Visual Basic.

2 Clicca su "Nuovo progetto" a destra sotto la scheda "File" che si trova sulla barra degli strumenti.

3 Evidenziare "Windows Application Form" nella finestra pop-up "Nuovo progetto".

4 Cambiare il nome del progetto per "tastiera su schermo" o qualcosa di simile per identificare più facilmente il vostro progetto.

5 Fai clic su "OK" nell'angolo in basso a destra della finestra di pop-up "Nuovo progetto". Un modulo vuoto etichetta "Form1" dovrebbe comparire nel giro di pochi secondi.

6 Clicca su "Proprietà Box" che si trova sul lato destro dello schermo ed evidenziare la casella "Nome"; cambiare il nome da "Form1" a "frmMain".

7 Evidenziare "FormBorderStyle" e modificare il nome attuale di "FixedToolWindow".

8 Evidenziare "Size" e cambiare la dimensione attuale di "390.208".

9 Evidenziare il "Testo" e cambiare il nome in "Tastiera".

10 Evidenziare "TopMost" e cambia in "True".

11 Espandere (+) i vostri "Controlli comuni" a "Toolbox" sul lato sinistro dello schermo e selezionare componente "ComboBox".

12 Disegnare un ComboBox nella casella "Form", che dovrebbe essere etichettato come "Tastiera".

13 Fare clic sulla casella combinata e poi tornare al "Proprietà Box" che si trova sul lato destro dello schermo. Evidenziare "Nome" nel "Proprietà Box" e cambiare il nome in "cboWindows".

14 Evidenziare "DropDownStyle" e modificare il nome in "DropDownList" and-click destro su "Form" in "Solution Explorer" e scegliere "Visualizza codice".

15 Digitare i seguenti metodi di API e le dichiarazioni al di sotto della "Public Class frmMain":

'Metodi API

Public Declare Function IsWindowVisible Lib "user32.dll" _

Alias ​​"IsWindowVisible" (ByVal hwnd As Integer) come booleano

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" _

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

'dichiarazioni

RowOne privata As String () = { "` "," 1 "," 2 "," 3 "," 4 "," 5 "," 6 "," 7 "," 8 "," 9 "," 0 "," - "," = "}

RowTwo privata As String () = { "q", "w", "e", "R", "t", "y", "u", "i", "o", "p", "[ ","] "}

RowThree privata As String () = { "a", "s", "D", "F", "G", "H", "j", "k", "l", ",", " ' "," # "}

RowFour privata As String () = { "\", "z", "x", "c", "v", "b", "n", "m", ",", ".", "/ "}

CapsLock privato come nuova casella di controllo

Chiave privata, come speciali String

Finestre private come nuovo ArrayList

Finestra privata come IntPtr

16 Inserire i metodi di API e le dichiarazioni sotto i "gestori di eventi":

'gestori di eventi

Private Sub chiave

mittente speciale (ByVal come Button,

ByVal e As System.EventArgs)

Se Speciale = "" Allora

Special = Sender.Tag

Altro

Special = ""

Finisci se

End Sub

Sub Key Click privata (mittente di ByVal come Button,

ByVal e As System.EventArgs)

Chiave = Sender.Tag

Se key = "{} SPACE" quindi il tasto = "" 'Converti {} SPACE Space

Se la finestra <> 0 Then

SetForegroundWindow(Window)

SendKeys.SendWait (Special & IIf (Capslock.Checked _

E non speciale & lt;> "^", _

UCase (Key), Key))

SetForegroundWindow (finestra)

Finisci se

End Sub

17 Inserisci questo sotto i "metodi privati":

'metodi privati

Private Function IsActiveWindow (ByVal hWnd As Integer) come booleano

Dim isowned come booleano

Dim Style As Integer

Isowned = GetWindow (hWnd, 4) <> 0

Style = GetWindowLong (hWnd, -20)

Se non IsWindowVisible (hWnd) poi tornare False 'non visibile

Se GetParent (hWnd) <> 0 Then return false 'ha Parent

Se (Stile E & H80) <> 0 e non isowned poi tornare False 'Is Tooltip

Se (Stile E & H40000) = 0 e isowned poi tornare False 'Ha un proprietario

Se Process.GetCurrentProcess.MainWindowHandle = hWnd poi tornare False

Rientro Finestra True 'valido

End Function

Private Sub KeyboardButton (Larghezza ByVal As Integer, ByVal Altezza come numero intero, _

ByVal Top As Integer, ByVal Left As Integer, _

Opzionale Testo ByVal come stringa = "", _

Tag opzionale ByVal come stringa = "", _

Opzionale ByVal speciale come booleano = false)

Pulsante fioco come nuovo pulsante

Button.Size = Nuovo formato (larghezza, altezza)

Button.Location = New Point (Left, Top)

Button.Text = Testo

Button.Tag = Tag

Se Speciale Poi

AddHandler Button.Click, AddressOf Key_Special

Altro

AddHandler Button.Click, AddressOf Key_Click

Finisci se

Controls.Add (Button)

End Sub

18 Ritorna alla visualizzazione struttura selezionando la scheda "Design" o tasto destro del mouse sulla voce "Progettazione" che si trova nel "Solution Explorer" per frmMain. All'interno del form visualizzato, fare doppio clic sul modulo (frmMain).

19 Digitare il seguente in "frmMain_Load ()" sub:

Dim Col As Integer

'Row One

Per Col = 0 a 12

KeyboardButton (25, 25, 40, Col * 25 + 4, _

RowOne(Col), RowOne(Col))

Il prossimo

KeyboardButton (50, 25, 40, Col * 25 + 4, "BkSp", "{} BACKSPACE")

'Seconda fila

KeyboardButton (36, 25, 66, 4, "Tab", "{TAB}")

Per Col = 0 a 11

KeyboardButton (25, 25, 66, Col * 25 + 40, _

UCase(RowTwo(Col)), RowTwo(Col))

Il prossimo

KeyboardButton (39, 25, 66, 36 + Col * 25 + 4, "↵", "{ENTER}")

'Terza fila

CapsLock.Appearance = Appearance.Button

CapsLock.Size = Nuovo formato (48, 25)

CapsLock.Location = New Point (4, 92)

CapsLock.Text = "Caps"

Controls.Add (CapsLock)

Per Col = 0 a 11

KeyboardButton (25, 25, 92, Col * 25 + 52, _

UCase(RowThree(Col)), RowThree(Col))

Il prossimo

KeyboardButton (27, 25, 92, 48 + Col * 25 + 4, "", "{ENTER}")

'Row Quattro

KeyboardButton (38, 25, 118, 4, "Shift", "+", True)

Per Col = 0 to 10

KeyboardButton (25, 25, 118, Col * 25 + 42, _

UCase(RowFour(Col)), RowFour(Col))

Il prossimo

KeyboardButton (62, 25, 118, Col * 25 + 42, "Shift", "+", True)

'Row Five

KeyboardButton (50, 25, 144, 4, "Ctrl", "^", True)

KeyboardButton (50, 25, 144, 54, "Alt", "%", True)

KeyboardButton (154, 25, 144, 104, "Space", "{} SPAZIO")

KeyboardButton (44, 25, 144, 258, "Home", "{HOME}")

KeyboardButton (44, 25, 144, 302, "Fine", "{} END")

KeyboardButton (33, 25, 144, 346, "Del", "{DEL}"

20 Ritorno al "Codice View" con un doppio clic sul modulo. Il Sub "frmMain_Load" dal passaggio precedente dovrebbe apparire. Ci dovrebbero essere due caselle a discesa nella vista Codice.

21 Seleziona "cboWindows" dalla prima casella a discesa "frmMain Event" e selezionare "discesa" dalla casella a discesa "Dichiarazioni".

22 Digitare quanto segue nella "cboWindows_DropDown (...)" Sub:

Windows.Clear ()

cboWindows.Items.Clear ()

Per ogni elemento come un processo in Process.GetProcesses

Se IsActiveWindow (Item.MainWindowHandle) _

E Item.MainWindowTitle <> "" Allora

Windows.Add(Item.MainWindowHandle)

cboWindows.Items.Add (Item.MainWindowTitle)

Finisci se

Il prossimo

Quindi selezionare "cboWindows" dalla prima casella a discesa di nuovo si trova nella vista Codice.

Scegliere "SelectedIndexChanged" e digitare quanto segue nel Sub "cboWindows_SelectedIndexedChange":

Se cboWindows.SelectedItem <> niente allora

Finestra = Windows.Item (cboWindows.SelectedIndex)

Finisci se

23 Salvare il progetto, perché sei finito.

24 Fai clic su "Start" e dovrebbe comparire la tastiera su schermo.

25 Clicca sulla "X" rossa situata nella parte in alto a destra della finestra per chiudere l'applicazione quando hai finito.