نمایش نتایج 1 تا 9 از 9

نام تاپیک: تغيير اندازه خودكار يك lable روي فرم

  1. #1

    تغيير اندازه خودكار يك lable روي فرم

    سلام
    روي فرم يه lable دارم كه مي خوام فرم به اندازه lable تغيير اندازژه بده .

    چه از لحاظ طولي و چه از لحاظ عرضي

    ممنون

  2. #2
    کاربر دائمی آواتار SilverGold
    تاریخ عضویت
    تیر 1389
    محل زندگی
    مشهدالرضا علیه السلام
    پست
    150

    نقل قول: تغيير اندازه خودكار يك lable روي فرم

    متاسفانه در وی بی دات نت با متن لیبل تغییر اندازه می دهد دیشب هم من خیلی سعی کردم این کار را انجام بدهم متاسفانه موفق نشدم

  3. #3
    کاربر دائمی آواتار ahrimaneahurai
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    ایران
    پست
    554

    نقل قول: تغيير اندازه خودكار يك lable روي فرم

    توی load فرم کد زیر رو بذار
    this.Size = new Size(100, 100);

    سایز فرم عوض میشه

  4. #4

    نقل قول: تغيير اندازه خودكار يك lable روي فرم

    نقل قول نوشته شده توسط ahrimaneahurai مشاهده تاپیک
    توی load فرم کد زیر رو بذار
    this.Size = new Size(100, 100);

    سایز فرم عوض میشه
    از پاسخي كه دادي ممنون
    ولي اين كد به درد من نميخوره
    مثلا همين message box خود C#‎ رو اگه دقت كني هر چقدر متن پيغام زياد باشه message box هم به همون نسبت بزرگ ميشه

  5. #5
    کاربر دائمی آواتار ahrimaneahurai
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    ایران
    پست
    554

    نقل قول: تغيير اندازه خودكار يك lable روي فرم

    خب می تونی بعد از اینکه اندازه لیبلت رو بدست آوردی سایز فرمت رو عوض کنی

  6. #6
    کاربر دائمی آواتار mehdin69
    تاریخ عضویت
    مهر 1389
    محل زندگی
    شیراز- رمزینه
    سن
    34
    پست
    692

    نقل قول: تغيير اندازه خودكار يك lable روي فرم

    يه tableLayoutPanel روي فرم بزار به يه ستون و رديف بعد تويش يه label قرار بده و خاصيت Dock label رو Fill كن
    حالا سايز فرم رو با سايز tableLayoutPanel برابر قرار بده...

  7. #7

    نقل قول: تغيير اندازه خودكار يك lable روي فرم

    سلام
    دوست عزیز شما چندین راه برای اینکار پیش رو دارین.
    یکیش همین راهیه که دوستمون در بالا گفتن.

    یکی دیگه از راه ها که فکر میکنم دقیقترینشون هم باشه اینه که شما اندازه نوشتتون رو با استفاده از
    توابع کلاس graphics بدست بیاری و اندازه فرمت رو با اون مقدار دهی کنی.

    SizeF stringSize = Graphics.MeasureString(String, Font)

    بعد هرجایی که نوشته لیبل رو تغییر دادید این کد رو وارد کنید.

    form1.Size = Graphics.MeasureString(String, Font);


    البته کدهای بالا بصورت انتزاعی هستند و شما باید انواع داده رو مقدار دهی کنید.

    اگه بازم مشکلی بود در خدمتم

  8. #8

    نقل قول: تغيير اندازه خودكار يك lable روي فرم

    نقل قول نوشته شده توسط shuriken مشاهده تاپیک
    سلام
    دوست عزیز شما چندین راه برای اینکار پیش رو دارین.
    یکیش همین راهیه که دوستمون در بالا گفتن.

    یکی دیگه از راه ها که فکر میکنم دقیقترینشون هم باشه اینه که شما اندازه نوشتتون رو با استفاده از
    توابع کلاس graphics بدست بیاری و اندازه فرمت رو با اون مقدار دهی کنی.

    SizeF stringSize = Graphics.MeasureString(String, Font)

    بعد هرجایی که نوشته لیبل رو تغییر دادید این کد رو وارد کنید.

    form1.Size = Graphics.MeasureString(String, Font);


    البته کدهای بالا بصورت انتزاعی هستند و شما باید انواع داده رو مقدار دهی کنید.

    اگه بازم مشکلی بود در خدمتم
    سلام
    ممنون از راهنماي كه كردين .
    ميشه يه مثال بزنيد .
    ممنون

  9. #9

    نقل قول: تغيير اندازه خودكار يك lable روي فرم

    البته اگه کدهارو خوب نگاه کنید دیگه احتیاج به راهنمایی نیست ولی سعی میکنم یک مثال بهتر بزنم


    // 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;


    البته توصیه میکنم فرمتون رو کامل اندازه نوشتتون نکنین و یمقدار از
    هر طرف فاصله بذارین.

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •