PDA

View Full Version : موقعیت دقیق یک Component در صفحه مانیتور؟



SYNDROME
دوشنبه 09 اردیبهشت 1387, 22:00 عصر
می خواستم بدان چطور می توان موقعیت (Left و Top) مثلا یک Button را را که در یک فرم قرار دارد از Left و Top مانیتور به دست آورد.
به این نکته دقت کنید که من نمی خواهم با جمع کردن Form.Left+Button.Left مقدار را به دست بیاورم چون اگر Button بر روی یک Panel باشد و یا در حالتهای دیگری باشد این عدد درست نمی باشد.
و یا Form.Top+Button.Top درست نمی باشد چون Title فرم محاسبه نمی شود.
آیا روشی وجود دارد که به صورت دقیق موقعیت یک Button را از Left و Top مانیتور به دست آورد.
با تشکر فراوان
موفق باشید

DAMAVAND
دوشنبه 09 اردیبهشت 1387, 22:39 عصر
شايد اين کارتو راه بندازه :


procedure TForm1.Button1Click(Sender: TObject);
var
R:TRect;
begin
GetWindowRect(Button1.Handle,R);
Caption:=IntToStr(R.Top)+' '+IntToStr(R.Left);
end;

موفق باشيد.

B-Vedadian
دوشنبه 09 اردیبهشت 1387, 23:42 عصر
نسبت به صفحه براي هر Control ميتوني بنويسي


AControl.ClientToScreen(0,0);

Yousef_bs
جمعه 22 مهر 1390, 03:22 صبح
مرسی جواب داد :X