如何用我的程序取的其他一个程序ListBox中的内容[没太多的分了,下次有分补上](22分)

  • 主题发起人 主题发起人 冬月
  • 开始时间 开始时间

冬月

Unregistered / Unconfirmed
GUEST, unregistred user!
如何用我的程序取的其他一个程序ListBox中的内容[哪个程序不是我写地,]
 
哦,这个呀,好象要通过API才可以哦,以前做过,不过现在好象不怎么记得了!
 
procedure TForm1.Button1Click(Sender: TObject);<br>var<br>&nbsp; Count : Integer;<br>&nbsp; H : Integer;<br>&nbsp; I : Integer;<br>&nbsp; Len : Integer;<br>&nbsp; str : string;<br>begin<br>&nbsp; H := StrToInt(Edit1.Text);//listbox的句柄<br>&nbsp; Count := SendMessage(H,LB_GETCOUNT,0,0);<br>&nbsp; for I := 0 to Count-1 do<br>&nbsp; begin<br>&nbsp; &nbsp; Len := SendMessage(H,LB_GETTEXTLEN,I,0);<br>&nbsp; &nbsp; SetLength(str,Len);<br>&nbsp; &nbsp; SendMessage(H,LB_GETTEXT,I,Integer(PChar(str)));<br>&nbsp; &nbsp; ListBox1.Items.Add(str);<br>&nbsp; end;<br>end;
 
行不行呀? 我要好好学习呢,我以为要得到窗口句柄才行呢。
 
realLearning谢谢你的回答,能联系你吗,我的QQ是82881358,我想向你讨教几个问题<br>谢谢
 
realLearning请问或的列表框内容后比如知道第3列是我需要的内容如何再在他<br>的程序列表上选中他,就是地三列变蓝
 
如果不是多选,发送一个LB_SETCURSEL消息给它。<br>你可以参考win32sdk中以LB_开头的消息,就是针对ListBox操作的。<br>
 
是单选,realLearning谢谢你,能贴出单选的代码吗?
 
为什么用LB_SETCURSEL有时候会把没选中的项目也加进去
 
procedure TForm1.Button1Click(Sender: TObject);<br>var<br>&nbsp; H : HWND;<br>begin<br>&nbsp; H := StrToInt(Edit1.Text);<br>&nbsp; if SendMessage(H,LB_SETCURSEL,StrToInt(Edit2.Text)//这是Item的索引号,0)=LB_ERR then<br>&nbsp; &nbsp; ShowMessage('ERROR');<br>end;
 
后退
顶部