باسلام
مبخوام یه کامپونتی بسازم با یه تکست باکس که اگر کاربر روی تکست باکس دو بار کلیک کرد یه فرم گوشه پایین تکست باکس باز بشه
چجوری میشه این کار رو کرد؟
Printable View
باسلام
مبخوام یه کامپونتی بسازم با یه تکست باکس که اگر کاربر روی تکست باکس دو بار کلیک کرد یه فرم گوشه پایین تکست باکس باز بشه
چجوری میشه این کار رو کرد؟
منظور اینه
چجوری میشه موقعیت لود فرم رو تنظیم کرد؟
سلام
ببین خاصیت StartPosition فرم دومت رو برابر با Manual بزار بعد موقه فراخونی فرم 2 این کارو بکن:
Form2 f = new Form2();
f.Location = new Point(Your X, Your Y);
f.Show();
(Your X, Your Y) دیگه چیه
عزیزیم مختصات نقطه دلخواهته
مثلا 10و100 میاد تو نقطه 10 و 100 صفحه (به پیکسل) فرم را لود می کند
اینو نوشتم
num frm = new num();
frm.Location=new Point(this.Location.X, this.Location.Y);
frm.Show();
اما همیشه یک جای ثایت لود میشه حتی وقتی فرم اصلی که کنترل روشه جا به جا میشه بازم فرقی نمیکنه
برادر من this.Location همواره ثابته بستگی داره فرم اول کجا باشه چون this به فرم اول اشاره می کند در ضمن یادت نره اون خاصیت که گفتم رو تغییر بدی حتما
من میخوام اگر فرم اصلی برنامه جابه جا شد مکان لود فرم بعدی هم بسته اون تغییر کنه
خوب برادر معلومه چون با this مقداردهي كردي.نقل قول:
اينو نوشتم
num frm = new num();
frm.Location=new Point(this.Location.X, this.Location.Y);
frm.Show();
اما هميشه يک جاي ثايت لود ميشه حتي وقتي فرم اصلي که کنترل روشه جا به جا ميشه بازم فرقي نميکنه
به كد جناب سعيد معصومي توجه كن.
شما x و y رو از گوشه پايين textbox تنظيم كن درست ميشه. يعني ورودي متد point ميشه نقاط دلخواه شما.
فکر میکنم دوستان منظورم رو نگرفتین
من یک کامپونت میخوام درست کنم با یک دکمه و یک تکست باکس وقتی روی دکمه کلیک شد فرمی جای مناسب کنارش لود بشه
حالا فرض کنید توی یک پروژه از این کنترل استفاده میکنم چه اتفاق میافته؟
اگر فرم اون پروژه جابه جا شد مکان لود فرمی که داخل کنترل هست هم باید تغییر کنه
پس واسه این نیاز دارم موقیعت جاری اون رو بیارم بیرون
یک چیزی شبیه dattamepicker
خاصيت StartPosition برابر با Manual و:
Form1 f1 = new Form1();
Form2 obj = new Form2();
obj.Left = f1.Left + 100;
obj.Top = f1.Top = 500;
//obj.Location = new Point(f1.Left, f1.Top);
MessageBox.Show("top: " + obj.Top.ToString() + "\n\n" + "left: " + obj.Left.ToString());
obj.Show();
خودت اندازه رو تنظيم كن