VB6 SendKeys问题

时间:2011-06-21 06:30:50

标签: vb6 sendkeys

我正在尝试创建一个按钮,在文本框中输入“0”值。

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

现在问题是我必须将文本框更改为由第三方api提供的pvcurenccy texbox,它不支持SelStart和SelText函数,所以我不能使用上面的代码。

我正在尝试使用SendKeys:

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

现在问题是它没有继续下一个游标。我正在尝试做屏幕上的keyborard正在做的事情。请帮忙。谢谢。

1 个答案:

答案 0 :(得分: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"