我現(xiàn)在沒(méi)有現(xiàn)成的代碼給你,不過(guò)可以給你一些建議。如果你想在同一進(jìn)程內(nèi)實(shí)現(xiàn)屏幕鍵盤(pán),則你只需要再F2打開(kāi)的時(shí)候,將F1的當(dāng)前焦點(diǎn)控件對(duì)象作為參數(shù),傳遞給F2窗體,在F2點(diǎn)擊屏幕控件時(shí),設(shè)置該“控件.Text = 鍵值” 即可,這種我稱之為假屏幕鍵盤(pán)。如果你想跨進(jìn)程實(shí)現(xiàn)屏幕鍵盤(pán),就比較難些了(比如:你想用你的F2窗體上的按鍵,實(shí)現(xiàn)QQ聊天內(nèi)容的輸入、記事本內(nèi)容的輸入)。這個(gè)需要用到 “鍵盤(pán)鉤子”技術(shù),有關(guān)這方面的資料,你不妨自己找找。 另外,你提的F2焦點(diǎn)老處理不好,我認(rèn)為F2根本不需要焦點(diǎn)控件(不要用按鈕做控件,而實(shí)用Label或圖片就可以了。)
成都創(chuàng)新互聯(lián)公司技術(shù)團(tuán)隊(duì)十余年來(lái)致力于為客戶提供成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、品牌網(wǎng)站設(shè)計(jì)、全網(wǎng)整合營(yíng)銷推廣、搜索引擎SEO優(yōu)化等服務(wù)。經(jīng)過(guò)多年發(fā)展,公司擁有經(jīng)驗(yàn)豐富的技術(shù)團(tuán)隊(duì),先后服務(wù)、推廣了上千網(wǎng)站,包括各類中小企業(yè)、企事單位、高校等機(jī)構(gòu)單位。
既然你可以輸入英文,只要系統(tǒng)切換到中文輸入方式下,例如“谷歌拼音”,不就可以輸入中文了
這是不可能完成的任務(wù),.NET平臺(tái)不存在開(kāi)發(fā)驅(qū)動(dòng)的能力,你要想在驅(qū)動(dòng)層對(duì)鍵盤(pán)操作,最好使用C,C++來(lái)實(shí)現(xiàn),比較方便。 像現(xiàn)在一些比較出名的網(wǎng)絡(luò)游戲,都是在驅(qū)動(dòng)層進(jìn)行保護(hù)的。
Vbs腳本可以用sendkey,VB方法就更多了,像sendmessage,keybd_events,等API都可以實(shí)現(xiàn)模擬按鍵,還有更牛逼的,利用WinIO可以在VB程序里調(diào)用驅(qū)動(dòng)模擬按鍵 我QQ2543280836
你每點(diǎn)一次tab是從你那個(gè)按鈕的下一個(gè)控件向后跳躍的。
因?yàn)槟泓c(diǎn)的時(shí)候,你的當(dāng)前控件就是你的按鈕。
2種方法:
1。用兩個(gè)界面,一個(gè)界面的按鈕控制另一個(gè)界面的tab跳躍
2。每次tab變化都記錄一下,這樣你才能得到點(diǎn)按鈕之前是那個(gè)控件為當(dāng)前,才能nextcongtrol
Public Class Form2
Private Sub Form2_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
AddHandler Label1.MouseEnter, AddressOf LabelMouseEnter
AddHandler Label2.MouseEnter, AddressOf LabelMouseEnter
AddHandler Label1.MouseLeave, AddressOf LabelMouseLeave
AddHandler Label2.MouseLeave, AddressOf LabelMouseLeave
AddHandler Label1.MouseDown, AddressOf LabelMouseDown
AddHandler Label2.MouseDown, AddressOf LabelMouseDown
End Sub
Private Sub LabelMouseEnter(ByVal sender As Object, ByVal e As System.EventArgs)
Dim c As Label = DirectCast(sender, Label)
c.BackColor = Color.DodgerBlue
End Sub
Private Sub LabelMouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs)
Dim c As Label = DirectCast(sender, Label)
Form1.TextBox1.Text = c.Text
End Sub
Private Sub LabelMouseLeave(ByVal sender As Object, ByVal e As System.EventArgs)
Dim c As Label = DirectCast(sender, Label)
c.BackColor = SystemColors.Control
End Sub
End Class