我自己做了一個軟鍵盤
其實就是一個KeyBoard的Form和一個Form1的瀏覽窗口,上面加27個字母和10個數字和一個Enter,用於輸入用戶名和密碼
KeyBard鍵上的代碼為
rc = PostMessage(Form1.ActiveControl.hwnd, WM_CHAR, keyx, 1)可是當我Form1瀏覽窗口打開KeyBoard窗體時,Form1上的WebBrowser焦點就失去了
這樣的話出會出錯該怎麼實現呢

解决方案 »

  1.   

    WebBrowser焦點没有并没有什么问题
    因为即使没有焦点依然可以用外部程序来给WebBrowser内的input控件输入的请你直接使用赋值函数
      

  2.   

    我在WebBrowser的窗口中加一個Frame作為軟鍵盤的外框,再在上面加Label1~Label9作為數字鍵,然後在Label1_Click()中用Sendkeys Label1.caption 就可以將數字發送到WebBrowser中的文本框去,可是在新的窗口就不行
      

  3.   

    很简单你另外一个窗体可以用form1.Label1_click来完成点击因为两个窗体是不一起的 所以必须传递一下
      

  4.   

    还有我所说的输入并不是sendkeyswebbrower可以直接对里面的控件进行输入的
      

  5.   

    沒辦法,最好隻能用Frame來做軟鍵盤的容器,用Label或Image來做軟鍵盤的鍵
    Private Sub Label1_Click(Index As Integer)
        SendKeys Label1(Index).Caption
    End SubPrivate Sub Label1_MouseDown(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
    Label1(Index).BorderStyle = 1
    End SubPrivate Sub Label1_MouseUp(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
    Label1(Index).BorderStyle = 0
    End SubPrivate Sub Label2_Click()
    SendKeys "{Enter}"
    End Sub