PDA

View Full Version : سوال: تغییر BorderStyle برای یک پنجره



joooje
سه شنبه 18 بهمن 1390, 17:59 عصر
با سلام به دوستان
من میخوام بتونم یک پنجره که از پنجره های برنامه خودم نیست رو عنوانش رو تغییر بدم و stlye اون رو هم تغییر بدم
برای تغییر عنوان از کد زیر استفاده میکنم


SendMessage(Hand1, WM_SetText, 0, Integer(PChar('Salam')));

ولی برای تغییر BorderStyle اون به bsNone یا bsSizeToolWin نمیدونم از کدوم یکی از توابع API استفاده کنم؟
ممنون میشم راهنمایی کنید و کدش رو برام بزارید.

BORHAN TEC
سه شنبه 18 بهمن 1390, 18:03 عصر
ولی برای تغییر BorderStyle اون به bsNone یا bsSizeToolWin نمیدونم از کدوم یکی از توابع API استفاده کنم؟
باید از تابع SetWindowLong استفاده کنید.:چشمک:

joooje
سه شنبه 18 بهمن 1390, 19:28 عصر
میشه لطف کنید کد کاملش رو بزارید
من خیلی جستجو کردم ولی نفهمیدم چطوری باید ازش استفاده کنم:ناراحت:

BORHAN TEC
چهارشنبه 19 بهمن 1390, 09:40 صبح
این هم یک مثال که از کتاب Mastering Delphi 7 در آوردم:
procedure TForm1.Button1Click(Sender: TObject);
var
OldStyle: Integer;
begin
// add border and caption to the app window
OldStyle := GetWindowLong (Application.Handle, gwl_Style);
SetWindowLong (Application.Handle, gwl_Style,
OldStyle or ws_ThickFrame or ws_Caption);
// set the size of the app window
SetWindowPos (Application.Handle, 0, 0, 0, 200, 100,
swp_NoMove or swp_NoZOrder);
end;