سلام
روي فرم يه lable دارم كه مي خوام فرم به اندازه lable تغيير اندازژه بده .
چه از لحاظ طولي و چه از لحاظ عرضي
ممنون
سلام
روي فرم يه lable دارم كه مي خوام فرم به اندازه lable تغيير اندازژه بده .
چه از لحاظ طولي و چه از لحاظ عرضي
ممنون
متاسفانه در وی بی دات نت با متن لیبل تغییر اندازه می دهد دیشب هم من خیلی سعی کردم این کار را انجام بدهم متاسفانه موفق نشدم
توی load فرم کد زیر رو بذار
this.Size = new Size(100, 100);
سایز فرم عوض میشه
خب می تونی بعد از اینکه اندازه لیبلت رو بدست آوردی سایز فرمت رو عوض کنی
يه tableLayoutPanel روي فرم بزار به يه ستون و رديف بعد تويش يه label قرار بده و خاصيت Dock label رو Fill كن
حالا سايز فرم رو با سايز tableLayoutPanel برابر قرار بده...
سلام
دوست عزیز شما چندین راه برای اینکار پیش رو دارین.
یکیش همین راهیه که دوستمون در بالا گفتن.
یکی دیگه از راه ها که فکر میکنم دقیقترینشون هم باشه اینه که شما اندازه نوشتتون رو با استفاده از
توابع کلاس graphics بدست بیاری و اندازه فرمت رو با اون مقدار دهی کنی.
SizeF stringSize = Graphics.MeasureString(String, Font)
بعد هرجایی که نوشته لیبل رو تغییر دادید این کد رو وارد کنید.
form1.Size = Graphics.MeasureString(String, Font);
البته کدهای بالا بصورت انتزاعی هستند و شما باید انواع داده رو مقدار دهی کنید.
اگه بازم مشکلی بود در خدمتم
البته اگه کدهارو خوب نگاه کنید دیگه احتیاج به راهنمایی نیست ولی سعی میکنم یک مثال بهتر بزنم
// Create a Graphics object for the Control.
Graphics g = control.CreateGraphics();
// Get the Size needed to accommodate the formatted Text.
Size preferredSize = g.MeasureString(
control.Text, control.Font).ToSize();
control هم میتونه لیبل باشه هم خود فرم و در واقع هر کنترلی میتونه باشه.
ولی از اونجایی که شما داری داخل لیبل مینویسی و ممکنه فونتش متفاوت باشه بهتره از خود
لیبلت استفاده کنی.
و بعد همونطور که قبلا گفتم کد زیر رو در جایی که میخوای نوشته لیبل رو تغییر بدی قرار بده.
//change label text
label1.text = "something";
// Create a Graphics object for the Control.
Graphics g = label1.CreateGraphics();
// Get the Size needed to accommodate the formatted Text.
Size preferredSize = g.MeasureString(
label.Text, label.Font).ToSize();
form1.Size = preferredSize;
البته توصیه میکنم فرمتون رو کامل اندازه نوشتتون نکنین و یمقدار از
هر طرف فاصله بذارین.