我们公司用某进销存软件,其中有一个窗口界面的功能如下:
有几个文本框 分别是: 原价 价格1 价格2 价格3 价格4
其中的原价是早已录入的商品价格 而价格1-4是供手工输入的不同折扣的价格
我想用Delphi 写一自动计算百分率的软件,单击button1时从"商品档案"窗口取出"原价"文本框中的内容,填入我的软件的“原价”文本框时分别计算出各百分率,然后填入edit2-edit4中。然后单击“发送”时把edit2-edit4的内容自动填入进销存软件即窗口对应的价格1-价格4文本框中。
请中如何编写 button1和button3中的内容
procedure TForm1.Button1Click(Sender: TObject);
var hw:hWnd;
begin
hw:= findwindow(nil,商品档案);
end;
//我只知道获得商品档案窗口的句柄,但不知如何获得里面对应的
原价 价格1 价格2 价格3 价格4 文本框的内容(注:1我不知道该进销存软件是什么语言编的,所以不知道文件框是否也叫 edit ;2. 我更不知道各文件框的名字,如何获得)
请问如何进行数据的交换。谢谢!!
先用Spy查看一下它各个的窗口
下载个反编译软件看看是用什么IDE开发的
这可就比较困难了。
一般通过FindWindow找到窗口handle,以及要输入内容的文本框,发送消息贴上字,再找到“按钮”的handle,发送消息,模拟点击。
要想从这个程序中的文本框中获取值,方法类似,只是发的消息不同
如果需要动态地跟踪另一程序中指定文本框中的数据,那就要用到windows钩子了,更复杂,呵呵:)
建议楼主系统地学习一个Windows的消息机制
可以考虑利用内存映射文件来实现,找找这方面的资料吧。