PDA

View Full Version : مشکل در استفاده از panel



بهزادسلطانی
سه شنبه 13 تیر 1385, 14:03 عصر
سلام دوستان

در یک panel به کمک یک حلقه چندین کنترل به صورت داینامیک ساخته می شود که خاصیت top هر یک را با ضرب کردن یک عدد ثابت در شمارنده حلقه تنظیم می کنم.

همه چیز تا زمانی که panel هنوز scroll نخورده است درست است اما بعد از اینکه scroll خورد فاصله کنترل ها به ترتیب دو برابر چهار برابر و رفته رفته بیشتر می شود. چطوری میشه این مشکلو برطرف کرد؟:متفکر:

once4ever
سه شنبه 13 تیر 1385, 14:45 عصر
خاصیت AutoSize و AutoSizeMode رو false کن

بهزادسلطانی
شنبه 17 تیر 1385, 12:32 عصر
ممنون که توجه کردید اما panel در دات نت 2003 چنین خاصیت هایی ندارد. لطف کنید بیشتر توضیح بدید.

شاد و سرافراز باشید

M.GhanaatPisheh
شنبه 17 تیر 1385, 14:00 عصر
اگر کدتون رو اینجا بگذارید، کمک بیشتری می شه بهتون کرد.

بهزادسلطانی
شنبه 21 مرداد 1385, 23:46 عصر
سلام، اینم کد. لطف کنید کمکم کنید:


Article++;
int i=Article;
#region label for article countor
Label newlbl=new Label();
newlbl.Name="lblArticle"+Article.ToString();
newlbl.AutoSize = true;
newlbl.Font = new System.Drawing.Font("Tahoma", 8.25F, ((System.Drawing.FontStyle)((System.Drawing.FontSt yle.Bold | System.Drawing.FontStyle.Underline))), System.Drawing.GraphicsUnit.Point, ((System.Byte)(178)));
newlbl.Top=10+(Article-1)*50;
newlbl.Left=608;
newlbl.RightToLeft = System.Windows.Forms.RightToLeft.Yes;
newlbl.Size = new System.Drawing.Size(11, 17);
newlbl.Text = Article.ToString();
this.panel9.Controls.Add(newlbl);
#endregion
#region make textbox kol
txtKol[i]=new TextBox();
txtKol[i].MaxLength=frmMain.KolDigits+frmMain.MoeenDigits;
txtKol[i].Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(178)));
txtKol[i].Location = new System.Drawing.Point(496, 8+(Article-1)*50);
txtKol[i].RightToLeft = System.Windows.Forms.RightToLeft.Yes;
txtKol[i].Size = new System.Drawing.Size(96, 21);
txtKol[i].Text = "";
this.panel9.Controls.Add(txtKol[i]);
txtKol[i].TextAlign=System.Windows.Forms.HorizontalAlignmen t.Center;
this.txtKol[i].TextChanged += new System.EventHandler(this.txtKol_TextChanged);
#endregion

once4ever
دوشنبه 23 مرداد 1385, 01:41 صبح
برای نوشتن کد از "حالت پیشرفته" استفاده کن
و از آیکون http://www.barnamenevis.org/forum/images/editor/code.gif استفاده کن تا کد رو درست نشون بده.
میبینم اگه به نتیجه رسیدم بهت میگم.

---
برای اینکه location بدی از کنترل قبلیش استفاده کن
یعنی کنترل اول که اضافه میکنی . کنترل بعدی رو 20 پیکسل پاینتر از اون بده (با استفاده از لوکیشن قبلی )

بهزادسلطانی
سه شنبه 24 مرداد 1385, 15:28 عصر
دوست عزیزم once4ever خیلی ممنون. با کمک شما مشکلم برطرف شد