在VB里怎么用sendmessage实现组合键ctrl+end,要确实可行的办法,请写下详细代码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在VB里怎么用sendmessage实现组合键ctrl+end,要确实可行的办法,请写下详细代码相关的知识,希望对你有一定的参考价值。

在VB里怎么用sendmessage实现组合键ctrl+end,要确实可行的办法,请写下详细代码

参考技术A Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Private Const WM_KEYDOWN = &H100
Private Const WM_KEYUP = &H101
Private Const VK_CONTROL = &H11
Private Const VK_END = &H23

Private Sub Command1_Click()
PostMessage Text1.hwnd, WM_KEYDOWN, VK_CONTROL, 0
PostMessage Text1.hwnd, WM_KEYDOWN, VK_END, 0
PostMessage Text1.hwnd, WM_KEYUP, VK_END, 0
PostMessage Text1.hwnd, WM_KEYUP, VK_RETURN, 0
'Text1.SetFocus
End Sub
这是在本地窗口上试验的,先在窗口上添加一个文本框和一个命令按钮,然后把上面的代码复制进去就可以了,如果是其他程序窗口中的文本框,先用findwindowex找到该文本框的句柄,替换掉上面的Text1.hwnd就行了

对于记事本这样界面非常简单(打开程序后焦点直接位于文本框控件之中)的程序,也可以用类似下面的代码:
Private Sub Command1_Click()
Dim lpid As Long
lpid = Shell("notepad.exe c:\a.txt", vbNormalFocus)
AppActivate lpid
SendKeys "^END"
End Sub本回答被提问者采纳

在vb中如何设置MSGBOX里字体的大小?

例如
msgbox "错误提示!" & vbcrlf & "请输入姓名!",vbExclamation, ""
怎样设置“错误提示”的字体大小
如果分别设置“错误提示”和“请输入姓名”字体大小,又该如何设置?
应该怎样编写新窗口呢?
高手教教我

如果分别设置应该是不行的,因为这段话都显示在同一个STATIC中
可以用sendmessage,findwindow,findwindowex,settimer等API配合控件msgbox的字体.
具体程序你可以在百度里面搜索 定制msgbox
会有很多实例.
参考技术A MSGBOX里字体的大小是系统规定的,程序本身不能更改。

汗.....我不记得了,vb老不用,忘光了.....][
在百度上查一查,学习一下吧。非常抱歉!

以上是关于在VB里怎么用sendmessage实现组合键ctrl+end,要确实可行的办法,请写下详细代码的主要内容,如果未能解决你的问题,请参考以下文章

vb用sendmessage关闭程序的问题。。

SendMessage()函数的 第二、三、四个参数是啥 怎么用

win32 SendMessage 发送组合键(alt+E)还有发送鼠标左键点击事件。,怎么测试也不成功,请教指点,

vb中postmessage中怎么用组合键ctrl+c

C# sendmessage详解,键盘 鼠标 求给力 拜托

在vb中如何设置MSGBOX里字体的大小?