从外部程序向控件中写入内容

时代码农 2006-04-29 02:38:12
各位大哥:
我想在一个VFP程序SY1.EXE向另一个VFP程序SY2.EXE中TEXTBOX控件赋值。
declare integer FindWindow IN WIN32API STRING,STRING
Declare INTEGER FindWindowEx IN WIN32API INTEGER,INTEGER,STRING,STRING
Declare INTEGER SetWindowText IN WIN32API INTEGER,String
Declare INTEGER SendMessage IN WIN32API INTEGER,INTEGER,INTEGER,STRING
LOCAL cTitle
cTitle="输入表单"
LS_HANDLE=FindWindow(0,ctitle)
IF LS_HANDLE<>0
LS_HANDLE_CONTROL=FindWindowEx(LS_HANDLE,0,0,0) &&SY2只有一个表单,表单只有一个控件就是那个TEXT.
IF LS_HANDLE_CONTROL<>0
SetWindowText(LS_HANDLELS_HANDLE_CONTROL,"AAAAAAAAAAAAAA成功")
SendMessage(LS_HANDLE_CONTROL,12,0,"AAAAAAAAAAAAAA成功")
ENDIF
endif
运行情况,那个表单的窗口的句柄能找到,如果对LS_HANDLE SetWindowText可以改变表单标题,
控件TEXT的句柄 LS_HANDLE_CONTROL 能找到,也是大于0 的整数,但无论是 SETWINDOWTEXT 还是 SENDMESSAGE都无法给TEXT赋值。
已经搞了好久了,都不知道为什么,我是刚学API,资料都是从网上查的。
请大家帮帮忙吧,谢谢!!!!!!
...全文
221 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
十豆三 2006-04-30
  • 打赏
  • 举报
回复
SetWindowText函数不改变其他应用程序中的控制的文本内容。

所以至少这个实现不了
TERRYYRRET 2006-04-30
  • 打赏
  • 举报
回复
应该是用findwindowex()不过你的参数好象不对,没有指明你的text控件
时代码农 2006-04-30
  • 打赏
  • 举报
回复
不好意思啊,刚明白apple_8180(十豆三)老兄的话,是啊,VFP控件是没有句柄的。
怎么样才能从“外部程序向控件中写入内容 ”呢?难道没有别的办法了吗?很想知道。
时代码农 2006-04-29
  • 打赏
  • 举报
回复
那到底怎么样才能在VFP中获得控件的句柄呢?清大哥赐教。多谢,我已经搞了好几天了。
十豆三 2006-04-29
  • 打赏
  • 举报
回复
控件没有句柄吧!

2,723

社区成员

发帖
与我相关
我的任务
社区描述
VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
  • VFP社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧