2011-06-21 13 views
1

テキストボックスに「0」の値を入力するボタンを作成しようとしています。VB6 SendKeys問題

Private Sub cmd0_Click() 
    PvCurPaidAmt.SetFocus 
    PvCurPaidAmt.SelStart = Len(PvCurPaidAmt) + 1 
    PvCurPaidAmt.SelText = "0" 
End Sub 

今の問題は、私はSelStartとがselText機能をサポートしていないので、私は上記のコードを使用することはできませんサードパーティのAPIが提供texboxを、pvcurenccyするテキストボックスを変更する必要があります。

私はのSendKeysを使用しようとしています:

Private Sub cmd0_Click() 
    PvCurPaidAmt.SetFocus 
    SendKeys "0" 
End Sub 

今の問題は、それが次のカーソルを続行しないです。画面上のキーボードがやっていることをやろうとしています。助けてください。ありがとうございました。

+0

どういう意味ですか:次のカーソルで続行しませんか?あなたは "0"がタイプされていないことを意味しますか?またはタイプされていますが、フォーカスが外れていますか?詳細を追加してください – Ahmad

答えて

0

私が正しく理解している場合、PvCurPaidAmtコントロールにフォーカスを設定すると、カーソルが文字列の最後にある(または文字列全体が選択されていない、または強調表示されていない)ことを確認できません。

PvCurPaidAmt制御が.textのプロパティを持っている場合は、あなたができる:

PvCurPaidAmt.Text = PvCurPaidAmt.Text & "0" 

ない場合は、末尾にカーソルを送信するための最初のSendKeys:

SendKeys "{END}", True ' it will force the app to wait till the keys are processed 

その後、

SendKeys "0" 
関連する問題