PDA

View Full Version : پنجره ویندوز



rasool_h
سه شنبه 16 خرداد 1385, 17:08 عصر
چطور میشه caption پنجره فعال را دریک برنامه دلفی بدست آورد

Touska
سه شنبه 16 خرداد 1385, 18:10 عصر
توی onActive هر فرم میشه این کارو کرد.


TForm(Sender).Caption

:)

pascal_rezaei
سه شنبه 16 خرداد 1385, 22:24 عصر
با عرض سلام وخسته نباشید.
در صورت امکان یک بررسی از لحاظ قدرت بین زبانهای برنامه نویسی صورت گیرد و کدامیک محبوبیت و قدرت بیشتری در بین زبانهای برنامه نویسی موجود در دنیا دارد . بیشتر زبانهای همه منظوره مانند خانواده C , خانواده بیسیک و delphi, java , ...
نظر کارشناسان و مسئولین و کاربران این سایت بیشتر در مورد کدامیک از زبانهای برنامه نویسی است نه در ایران بلکه به صورت کلی

mzjahromi
چهارشنبه 17 خرداد 1385, 06:13 صبح
با عرض سلام وخسته نباشید.
در صورت امکان یک بررسی از لحاظ قدرت بین زبانهای برنامه نویسی صورت گیرد و کدامیک محبوبیت و قدرت بیشتری در بین زبانهای برنامه نویسی موجود در دنیا دارد . بیشتر زبانهای همه منظوره مانند خانواده C , خانواده بیسیک و delphi, java , ...
نظر کارشناسان و مسئولین و کاربران این سایت بیشتر در مورد کدامیک از زبانهای برنامه نویسی است نه در ایران بلکه به صورت کلی
سلام دوست عزیز
موضوع این تاپیک چیز دیگه هست و شما باید این بحث را در یک تاپیک مرتبط (که تعدادشون هم کم نیست) مطرح کنید

B_YAGHOBI
چهارشنبه 17 خرداد 1385, 08:39 صبح
اگر منظورتان پنجره های خارجی است با دستور FindWindow پنجره مورد نظر را پیدا کنید
و با GetWindowText عنوان آنرا بدست آورید.

rasool_h
چهارشنبه 17 خرداد 1385, 13:54 عصر
توی onActive هر فرم میشه این کارو کرد.


TForm(Sender).Caption

:)
بیخشید منظور من پنجره فعال در ویندوز میباشد نه caption فرم که شما نوشته اید اگه اطلاعاتی در مورد آن دارید راهنمایی کنید

vcldeveloper
پنج شنبه 18 خرداد 1385, 02:01 صبح
منظور من پنجره فعال در ویندوز میباشد
GetForegroundWindow برای گرفتن Handle پنجره.
SendMessage با پارامتر WM_GetText برای گرفتن Caption.

rasool_h
پنج شنبه 18 خرداد 1385, 09:08 صبح
این کد برای افرادی که مثل خودم به مشکل بر نخورند


function ActiveCaption: string;
var
Handle: THandle;
Len: LongInt;
Title: string;
begin
Result := '';
Handle := GetForegroundWindow;
if Handle <> 0 then
begin
Len := GetWindowTextLength(Handle) + 1;
SetLength(Title, Len);
GetWindowText(Handle, PChar(Title), Len);
ActiveCaption := TrimRight(Title);
end;
end;

{ - - - - - - - - - - - - - - - - - - - - -}

procedure TForm1.Timer1Timer(Sender: TObject);
begin
Label1.Caption := ActiveCaption;
end;


لطفا از تگ Code استفاده کنید