Delphi 如何获取控件序号

Delphi 如何获取控件序号,第1张

procedure TForm1Panel1Click(Sender: TObject);

begin

TPanel(Sender)Caption := Copy(TPanel(Sender)Name,6,2);

end;

delphi6 中的控件

delphi7以后都改用indy了

就是这样

如果需要,你去

下载那里有

lbDirectoryItemsClear;

FTPList(lbDirectoryItems, '', false);

第一个参数是一个列表TStrings,就是你用来显示结果的

第二个参数是一个字符串,第三个参数是一个boolean。

这个是indy官方的例子,你下下来看一下 就明白了。很全的。

Var

lpszWindowText:Array[0254] of char;

hHandle:THandle;

Begin

hHandle:=已知句柄;

GetWindowText(hHandle, @lpszWindowText, 254);

ShowMessage('其标题为:'+StrPas(lpszWindowText));

End;

可以这样获取某窗口内文本框的内容:

Var

hEdt,hWindow:THandle;

//回调函数的载体,用于处理对找到的edit后的 *** 作

Procedure OnGetEditHandle(hWnd:HWND)

var

cName: array[0180] of Char;

lpszEdtText:Array[0254] of char;

Begin

GetClassName(hwnd, cName, 180);

IF Pos('EDIT',UpperCase(StrPas(cName)))>0 Then

Begin

SendMessage(hwnd,WM_GETTEXT,254,Integer(@lpszEdtText));

//也可以试试下面这个,不过这个当为密码框时失效

//GetWindowText(hwnd, @lpszEdtText, 254);

ShowMessage('Edit文本为:'+StrPas(lpszEdtText));

End

End;

hWindow:=窗口的句柄;

//枚举子窗口,获取Edit句柄,然后获取文本

EnumChildWindows(hWindow, @OnGetEditHandle, Integer(@hEdt));

提示:可以利用 sender 参数。

当激发控件事件时,sender 参数中带有传递指向事件源对象的引用,可以通过 sender 来获取当前的对象数据。

例如:

private void button1_Click(object sender, EventArgs e)

上面的代码中 sender 指向的就是 button1。

如果多控件使用同一事件代码,则可以用

(Button)sender

来得到当前激发的控件。

尝尝这句语句:ShowMessage(TComponent(Sender)Name);用TComponent(Sender)Name可以获得控件名称。 查看原帖>>

以上就是关于Delphi 如何获取控件序号全部的内容,包括:Delphi 如何获取控件序号、delphi indy控件 ftp 获取文件夹名称、Delphi中如何查看其他程序上控件的标题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9576809.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存