PDA

View Full Version : حذف کادر آبی رنگ دور فرم با داشتن قابلیت sizebale



zahra_no
پنج شنبه 10 اسفند 1391, 23:08 عصر
با سلام

میخواستم فرمم قابلیت
borderStyle=bsSizeable داشته باشد ولی کادر دور آبی رنگ آن حذف بشود.
البته با توجه به این تاپیک (http://barnamenevis.org/showthread.php?304357-%D8%AA%D8%BA%DB%8C%DB%8C%D8%B1-%D8%A7%D9%86%D8%AF%D8%A7%D8%B2%D9%87-%D9%81%D8%B1%D9%88%D9%85-%D8%A8%D8%A7-%DA%A9%D8%B4%DB%8C%D8%AF%D9%86-%D9%85%D9%88%D8%B3) همیچین قابلیتی هست ولی در اینجا فرم باید
borderStyle=bsNone باشه. که مد نظر من این نیست.

MohsenB
جمعه 11 اسفند 1391, 01:15 صبح
با سلام

میخواستم فرمم قابلیت
borderStyle=bsSizeable داشته باشد ولی کادر دور آبی رنگ آن حذف بشود.
البته با توجه به این تاپیک (http://barnamenevis.org/showthread.php?304357-%D8%AA%D8%BA%DB%8C%DB%8C%D8%B1-%D8%A7%D9%86%D8%AF%D8%A7%D8%B2%D9%87-%D9%81%D8%B1%D9%88%D9%85-%D8%A8%D8%A7-%DA%A9%D8%B4%DB%8C%D8%AF%D9%86-%D9%85%D9%88%D8%B3) همیچین قابلیتی هست ولی در اینجا فرم باید
borderStyle=bsNone باشه. که مد نظر من این نیست.

سلام

کافیست تابع زیر را اضافه نمایید : البته کامل نوشتم با طریقه اضافه کردن به فرم که کامل متوجه شده باشید :

type
TForm1 = class(TForm)
btn1: TButton;
procedure btn1Click(Sender: TObject);
private
{ Private declarations }
procedure CreateParams(var Params: TCreateParams); override;
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.CreateParams(var Params: TCreateParams) ;
begin
BorderStyle:= bsNone;
inherited;
Params.ExStyle:= Params.ExStyle or WS_EX_STATICEDGE;
Params.Style:= Params.Style or WS_SIZEBOX;
end;

موفق باشید

zahra_no
جمعه 11 اسفند 1391, 16:50 عصر
ممنون از پاسختون
ولی میخواستم خاصیت جابه جایی فرم رو با ماوس داشته باشم که در این حالت دیگه این قابلیت وجود نداره. آیا میشه این قابلیت رو هم به این فرم اضافه کرد؟

MohsenB
جمعه 11 اسفند 1391, 17:22 عصر
سلام

این سوالات قبلا مطرح شده ، اگر جستجو میکردید زودتر به نتیجه میرسیدید .
این کد رو درون روال MouseDown شیئی که میخواهید جابجا کنید قرار بدهید :

ReleaseCapture;
SendMessage(Handle, $A1, 2, 0);

موفق باشید