Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共8 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:如何实现 用VBA 把一个已经打开的外部程序记事本 置顶

1楼
beensu 发表于:2010/11/27 3:21:32

如何实现 用VBA 把一个已经打开的外部程序记事本 置顶

2楼
wattwei 发表于:2010/11/27 12:54:17
Sub test()
Set Wrap = CreateObject("DynamicWrapper")
Wrap.Register "user32.dll","FindWindow","i=ss","f=s", "r=l"
Wrap.Register "user32.dll","SetWindowPos","i=hhllllu","f=s", "r=l"
WindowHandle = Wrap.FindWindow(vbNullString, "无标题 - 记事本")
If WindowHandle Then
    Call Wrap.SetWindowPos(WindowHandle,-1,0,0,0,0,3)   '设置置顶
    'Call Wrap.SetWindowPos(WindowHandle,-2,0,0,0,0,3)  '取消置顶
End If
End Sub

根据notepad的标题对应修改,查找窗口
3楼
beensu 发表于:2010/11/27 20:13:57
谢谢 版主 另外如何使得外部程序的按钮 文本框 菜单等得到焦点
4楼
wattwei 发表于:2010/11/27 20:35:20
可以使用FindWindowEx实现窗口的遍历,找到指定控件的句柄。楼主可以搜索Internet获得相关信息。
另楼主有编写外挂程序的倾向,本人不反对,但也不支持,故不会提供更多帮助,请自行研究。
5楼
jzt321123 发表于:2012/10/10 21:32:50
 Wrap.SetWindowPos这写对象都是外部对象吗?求哪里找到的?
6楼
guotx2010 发表于:2012/10/11 21:35:57

Wrap.Register "user32.dll","FindWindow","i=ss","f=s", "r=l"
Wrap.Register "user32.dll","SetWindowPos","i=hhllllu","f=s", "r=l"


 

这些参数从哪里可以查到呢,不同的函数参数都不一样。

7楼
王锋 发表于:2012/10/11 21:38:14

网上有很多WIN32 API的资料

8楼
guotx2010 发表于:2012/10/11 22:27:01

是的,我找了一个网址,给个链接,大家一起学习吧

http://www.vbgood.com/api.html

 

共8 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.02734 s, 2 queries.