深蓝忧郁 进来拿你的100分喽 ( 积分: 100 )

  • 主题发起人 主题发起人 dngjzx
  • 开始时间 开始时间
D

dngjzx

Unregistered / Unconfirmed
GUEST, unregistred user!
请帮我个忙,帮我写个去除IE标题栏中的程序名称的代码,我刚学D什么都不懂请多帮帮

要求:在Edit1中显示去除程序名后的标题

function EnumChildWindowsProc(hwnd: Integer; lparam: Longint): Boolean; stdcall;
var
buffer: array[0..255] of char;
begin
Result := True;
GetClassName(hwnd,buffer,256);
if StrPas(Buffer)='Edit' then
begin
SendMessage(hwnd,WM_GETTEXT,256,lparam);
Result:=False;
end;
end;

procedure TForm1.FormActivate(Sender: TObject);
var
hwnd: Integer;
buffer: array[0..255] of char;
begin
hwnd := FindWindow('IEFrame',nil);
if hwnd<> 0 then
begin
EnumChildWindows(hwnd,@EnumChildWindowsProc,Integer(@buffer[0]));
edit2.Text:=(StrPas(buffer));
GetWindowText(hwnd,buffer,256);//取标题栏
edit1.Text:=(strpas(buffer));

end;
end;
 
请帮我个忙,帮我写个去除IE标题栏中的程序名称的代码,我刚学D什么都不懂请多帮帮

要求:在Edit1中显示去除程序名后的标题

function EnumChildWindowsProc(hwnd: Integer; lparam: Longint): Boolean; stdcall;
var
buffer: array[0..255] of char;
begin
Result := True;
GetClassName(hwnd,buffer,256);
if StrPas(Buffer)='Edit' then
begin
SendMessage(hwnd,WM_GETTEXT,256,lparam);
Result:=False;
end;
end;

procedure TForm1.FormActivate(Sender: TObject);
var
hwnd: Integer;
buffer: array[0..255] of char;
begin
hwnd := FindWindow('IEFrame',nil);
if hwnd<> 0 then
begin
EnumChildWindows(hwnd,@EnumChildWindowsProc,Integer(@buffer[0]));
edit2.Text:=(StrPas(buffer));
GetWindowText(hwnd,buffer,256);//取标题栏
edit1.Text:=(strpas(buffer));

end;
end;
 
写的不错,能分点吗?哈[:D]
 
不太明你的意思。
 
回调函数啊
 
你写哪一段是什么意思?干脆别写,高得别人懵头懵脑的
 
上面那段代码是取得当前活动窗口的IE标题和网址啊
 
懒得回答了。。答了你也删贴~
 
var
sDemo: string;
begin
sDemo := 'http://www.delphibox.com ;- Microsoft Internet Explorer';
Delete(sDemo, LastDelimiter('-', sDemo), MaxInt);
ShowMessage(TrimRight(sDemo));
转自盒子
 
多人接受答案了。
 

Similar threads

I
回复
0
查看
587
import
I
I
回复
0
查看
575
import
I
后退
顶部