برگزیده های پرشین تولز

سوالات فوری

وضعیت
موضوع بسته شده است.

هستی

همکاربازنشسته
تاریخ عضویت
12 آپریل 2007
نوشته‌ها
3,887
لایک‌ها
708
سن
35
محل سکونت
My Dreams
سلام دوستان من یه سری یوال داشتم کسی می تونه کمکم کنه؟پیشاپیش ممنون از راهنمایی و کمکتون
1- یک کد cشارپ را پرینت گرفته و اجزای آن را مشخض کنید( یک کد آماده سی شارپ می خوام که توش اجزایی که تا حالا یاد گرفتیم واونایی که یاد نگرفتیم مشخص کنم)
2-در فراخوانی با ارجاع به جای کلمه ref از کلمه out نیز می توان استفاده کرد تفاوت این 2 کلمه چیست( یه تحقیق چند خطی)
3-کلاسی بنویسید که یک کتاب موجود رد کتابخانه را پیاده سازی کند
 

amin_lili

کاربر تازه وارد
تاریخ عضویت
24 آپریل 2007
نوشته‌ها
532
لایک‌ها
2
سن
43
محل سکونت
ای کاش آنجا ...
هستی جان سوال اولت رو متوجه نشدم . لطفا توضیح بیشتری بده
 

amin_lili

کاربر تازه وارد
تاریخ عضویت
24 آپریل 2007
نوشته‌ها
532
لایک‌ها
2
سن
43
محل سکونت
ای کاش آنجا ...
پاسخ سوال دوم :

کلمه کلیدیout زمانی استفاده می شه که یک پارامتر را ارجاع بدیم به یک متد .خب حالا بحث اینجاست که چه فرقی می کنه با ref ؟ در استفاده از ref لازمه اون پارامتر ابتدا مقدار دهی بشه بعد به یک متد ارجاع داده بشه در حالی که در استفاده از out باید درون متدی که بهش پاس داده شده بهش مقدار دهی کرد.
مثال :
کد:
class OutExample
{
    static void Method(out int i)
    {
        i = 44;
    }
    static void Main()
    {
        int value;
        Method(out value);
        // value is now 44
    }
}

out و ref در هنگام اجرا (run time) متفاوت عمل می کنند اما در هنگام کامپایل مشابه هستند از این رو نمی تونیم چند تا متد overload کنیم که ورودی یکیشون out باشه و دیگری ref .

مثال :

کد:
class CS0663_Example 
{
    // compiler error CS0663: "cannot define overloaded 
    // methods that differ only on ref and out"
    public void SampleMethod(out int i) {  }
    public void SampleMethod(ref int i) {  }
}

اما می تونیم چند متد overload بنویسیم که یکی out باشه و دیگری بدون چیزی . همین طور برای ref .
مثال :

کد:
class RefOutOverloadExample
{
    public void SampleMethod(int i) {  }
    public void SampleMethod(out int i) {  }
}
 

amin_lili

کاربر تازه وارد
تاریخ عضویت
24 آپریل 2007
نوشته‌ها
532
لایک‌ها
2
سن
43
محل سکونت
ای کاش آنجا ...
ببخش هستی جان داشتم یانگوم رو می دیدم(برای بار سوم:wacko:)

خب من نمی دونم کلاسی که می خوای تا چه حد کامل باشه ؟؟؟
اما فرض می کنم که یک کلاس ساده می خوای . کد زیر رو می ذارم اگه کافی نبود بگو تکمیلش کنم.


کد:
using System;

namespace MyBook {
  public class Book {

//هر چی دوست داری خصوصیت تعریف کن
    private string _isbn;
    private string _title;
    private int _price;
    private string _publish;
    private DateTime _published;

    public string Isbn {
      get {return _isbn;}
      set {_isbn=value;}
    }
   public string Title{
      get {return _title;}
      set {_title=value;}
    }
   public string Price{
      get {return _price;}
      set {_price=value;}
    }
   public string Publish{
      get {return _publish;}
      set {_publish=value;}
    }
   public string Published{
      get {return _published;}
      set {_published=value;}
    }
// constructor
   public Book()
   {
     _isbn="";
     _title="";
     _price=0;
     _publish="";
     _published=DateTime.Now;
   }

   public Book(string isbn,string title,int price,string publish,DateTime published)
   {
     _isbn=isbn;
     _title=title;
     _price=price;
     _publish=publish;
     _published=published;
   }
  }
}

میگم بستگی داره از کلاست چه انتظاری داشته باشی
 

هستی

همکاربازنشسته
تاریخ عضویت
12 آپریل 2007
نوشته‌ها
3,887
لایک‌ها
708
سن
35
محل سکونت
My Dreams
دستت درد نکنه امین جان.خسته نباشی.در مورد سوال اول باید بگم هیچی یه کد آماده سی شارپ می خواستم همین. تا خودم از توش اون قسمت هایی که تا حالا یاد گرفته بودم رو مشخص کنم و اونایی که یاد نگگرفتم علامت بزنم.( حالا هر جور کدی که بود برای هر دستوری) تا ذهنم با کدهای سخت تر آشنا بشه. که تا 5 روز دیگه احتیاجش دارم.البته یه سری برنامه دیگه هم هست که می نویسم اگه موردی داشت مطرح می کنم تا از کمکت استفاده کنم.از پاسخ گوییت برای بقیه سوال ها واقعا ممنون;):happy:
 

amin_lili

کاربر تازه وارد
تاریخ عضویت
24 آپریل 2007
نوشته‌ها
532
لایک‌ها
2
سن
43
محل سکونت
ای کاش آنجا ...
خواهش می کنم . در .واقع تو می خوای با syntax کلیه دستورات زبان c# آشنایی کامل پیدا کنی ...؟

خب فکر کنم اگه یه تاپیک با عنوانی متناسب تر برای این موضوع بزنیم بهتر باشه و گرنه همین جا پاسخ می دم...
 

هستی

همکاربازنشسته
تاریخ عضویت
12 آپریل 2007
نوشته‌ها
3,887
لایک‌ها
708
سن
35
محل سکونت
My Dreams
خواهش می کنم . در .واقع تو می خوای با syntax کلیه دستورات زبان c# آشنایی کامل پیدا کنی ...؟
...

نه امین جان من می خوام یه کد آماده ( حالا هر چی ) رو پرینت بگیرم و قسمت هایی که تا حالا یاد گرفتم رو علامت بزنم و اونایی که یاد نگرفتم علامت بزنم.خلاصه یه برنامه(کدش) حالا هر چی باشه می خوام همین .;)
 

هستی

همکاربازنشسته
تاریخ عضویت
12 آپریل 2007
نوشته‌ها
3,887
لایک‌ها
708
سن
35
محل سکونت
My Dreams
سلام.امين جان خسته نباشي . ميشه يه کمکي بکني?
1-برنامه اي که پس از اجرا شدن محيط مستطيل را روي button نمايش دهد
2- برنامه قبل را طوري تغيير دهيد تا اين کار را براي دايره انجام دهد( که من فکر مي کنم اون برنامه اولي نوشته بشه فرقش با اين تو يه خط کد براي مساحت باشه درسته؟)
3- برنامه را طوري تغيير دهيد تا شعاع دايره را از وردوي بگيرد سپس محيط آن را محاسبه کند
اين 3 تا برنامه بود + يه برنامه که خودم تا يه جاهاييش کدش رو نوشتم اگه جايي اشکال داره بهم بگو يا خودت يه کد جديد براش بنويس ممنون
4-برنامه اي که مقاديرx,y را دريافت کرده و پس از کليک بر روي دکمه creat محيط و مساحت را نمايش دهد(شکلش رو کشيدم)

کد:
using
name space first 2
{
public partial classform1:form
{
public form1()
{
int ialize componet();
}
private void button_click(object sender,بقيه رو نمي دونم چي بنويسم)
{
int x=int.parse(text box1.text);
int y=int.parse(text box2.text);
rect r=new rect(x,y);
textbox3.text=r.mohit().tostring();
textbox4.text=r.masahat().tostring();
}
}
public void fe()
{
rect r=new rect(2,3);
int k=r.mohit();
button1.text=k.tostring();
}
}
public classrect
{
private int x;
private int y;
public rect(inta,intb)
{
x=a;
y=b;
}
public int mohit()
{
return(x+y)*2;
}
public int masahat()
{
return(x+y)
}
پ.ن: در مورد پست قبلی راستش نتونستم یه کد درست و حسابی آماده پیدا کنم. شما کد آماده ای نداری؟
 

فایل های ضمیمه

  • 1.JPG
    1.JPG
    6.5 KB · نمایش ها: 7

amin_lili

کاربر تازه وارد
تاریخ عضویت
24 آپریل 2007
نوشته‌ها
532
لایک‌ها
2
سن
43
محل سکونت
ای کاش آنجا ...
کدی که نوشتی درسته . البته این کد بیشتر سودوکد هست تا اینکه کد باشه . چون اگه اینو اجراش کنی کلی ارور syntax داره . حروف کوچک و بزرگ در زبان c# تفاوت دارند . شکل reserve word ها هم باید عینا درست نوشته بشن . اما الگوریتم کدی که نوشتی صحیح هست .
در مورد سوال اول و دوم هم متوجه نشدم منظورت از مستطیل کدوم مستطیل هست ؟ آیا برنامه باید یه مستطیل رسم کنه و بعد محیطش رو محاسبه کنه یا اینکه محیط فرم اجرایی رو باید محاسبه کنه ؟
در هر صورت که باشه شما براحتی می تونی محیط مستطیل و دایره رو محاسبه کنی . کافیه فرمول محاسبه رو بدونی که حتما می دونی . چیزی شبیه همون کدی که نوشتی می شه .

توی کدت یه جای نمیدونستی جی بنویسی که فارسی نوشتی . باید اینو بنویسی :

کد:
private void button1_Click(object sender, EventArgs e)
        {

        }
 

amin_lili

کاربر تازه وارد
تاریخ عضویت
24 آپریل 2007
نوشته‌ها
532
لایک‌ها
2
سن
43
محل سکونت
ای کاش آنجا ...
اگه فرمت صحیح کدی که نوشتی رو می خوای بگو تا برات بنویسم همین جا
 

هستی

همکاربازنشسته
تاریخ عضویت
12 آپریل 2007
نوشته‌ها
3,887
لایک‌ها
708
سن
35
محل سکونت
My Dreams
کدی که نوشتی درسته . البته این کد بیشتر سودوکد هست تا اینکه کد باشه . چون اگه اینو اجراش کنی کلی ارور syntax داره . حروف کوچک و بزرگ در زبان c# تفاوت دارند . شکل reserve word ها هم باید عینا درست نوشته بشن . اما الگوریتم کدی که نوشتی صحیح هست .
در مورد سوال اول و دوم هم متوجه نشدم منظورت از مستطیل کدوم مستطیل هست ؟ آیا برنامه باید یه مستطیل رسم کنه و بعد محیطش رو محاسبه کنه یا اینکه محیط فرم اجرایی رو باید محاسبه کنه ؟
در هر صورت که باشه شما براحتی می تونی محیط مستطیل و دایره رو محاسبه کنی . کافیه فرمول محاسبه رو بدونی که حتما می دونی . چیزی شبیه همون کدی که نوشتی می شه .

توی کدت یه جای نمیدونستی جی بنویسی که فارسی نوشتی . باید اینو بنویسی :

کد:
private void button1_Click(object sender, EventArgs e)
        {

        }

درمورد سوال 1 و 2 باید بگم که یه برنامه هست که با کلیک روی دکمهbutton محیط مستطیل رو محاسبه می کنه یعنی یه button بذاریم که وقتی روش کلیک کردیم محیط مستطیل رو با توجه به طول و عرضی که بهش دادیم محاسبه کنه یه چیزی مثل شکلی که کشیدم اما خیلی ابتدایی تر فقط محیط رو با کلیک بر روی دکمه button محاسبه کنه همین
برنامه بعد هم همین کارو برای دایره انجام بده که فکر می کنم فقط کد محیطش فرق داره با دایره.بقیه جواب ها رو هم تو پی ام دادم
درمورد پست بعدی هم شما می خوای کد کاملش رو بده:happy:
 

هستی

همکاربازنشسته
تاریخ عضویت
12 آپریل 2007
نوشته‌ها
3,887
لایک‌ها
708
سن
35
محل سکونت
My Dreams
ممنون امین جان درمورد سوال 1 و2 هم باید مثل کدی که نوشتم عمل کنم؟ یعنی فقط 2 دکمه اضافی رو حذف کنم .x, y وcreatبمونه بقیه حذف بشه وقتی ایکس و ایگرگ رو دادیم با کلیک بر روی کریت کد رو تو همون کریت نمایش بده.فقط اگه میشه یکم راهنماییم کن کدش چه جوری میشه.آخه من دقیق نمی دونم.گیج شدم
 

amin_lili

کاربر تازه وارد
تاریخ عضویت
24 آپریل 2007
نوشته‌ها
532
لایک‌ها
2
سن
43
محل سکونت
ای کاش آنجا ...
هستی جان در مورد تفاوت زبان سی شارپ و وی بی دات نت می تونی این مقاله رو بخونی . در مورد سوال 1 و 2 هم باید بگم کار سخت تر رو انجام دادی اما تو آسونه موندی ؟!
تفاوت زیادی با اونچه که نوشتی نداره . توی کدی که نوشتی طول و عرض رو از کاربر می گیری حالا کافیه خودت مقدار بدی . این که ساده تره . مهم فقط دونستن فرمول محاسبه محیط و مساحت و این چیزاست که اونهم به درستی توی کدی که نوشتی محاسبه کردی .
 

هستی

همکاربازنشسته
تاریخ عضویت
12 آپریل 2007
نوشته‌ها
3,887
لایک‌ها
708
سن
35
محل سکونت
My Dreams
ممنونم امین جان ولی این مقاله که اینگلیسیه.باید چیکارش کنم؟ اصلا فارسی موجود نیست چیزه خوبی در این رابطه؟
 

شیما

کاربر تازه وارد
تاریخ عضویت
26 می 2007
نوشته‌ها
4
لایک‌ها
0
سلام.

ممکنه لطفا کسی به من بگه با این خطا چه کنم؟
Failed to enable constraints. One or more rows contain values violating non-null, unique, or foreign-key constraints.

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

راستی یه مشکل دیگه چطوری تو یه فرم دیگه می تونم اطلاعات فرم دیگر رو صدا بزنم؟ مثلا: در فرم 2 بخوام
form1.textbox1.text
 

amin_lili

کاربر تازه وارد
تاریخ عضویت
24 آپریل 2007
نوشته‌ها
532
لایک‌ها
2
سن
43
محل سکونت
ای کاش آنجا ...
در مورد سوال اول قطعا یه جایی داده تکراری یا غیر مجاز وارد شده . باید بگردی و پیداش کنی


در مورد سوال دومت بگم که باید از فرم 1 یک شی بسازی و با خصوصیت Controls اون شی به کنترل مورد نظر دسترسی پیدا کنی .
فرض کن دو تا فرم داری به نام های Form1 و Form2 . و در هر کدوم هم یه دونه TextBox داری و می خوای مقدار تکست درون TextBox1 از فرم2 رو در TextBox1 از فرم 1 نشون بدی :

کد:
// رویداد کلیک دگمه1 در فرم 1
private void button1_Click(object sender, EventArgs e)
        {
            Form2 f = new Form2();
            textBox1.Text = f.Controls["TextBox1"].Text;
        }

کد فوق مقداری که در قبل از اجرای برنامه برای خصوصیت Text متعلق به کنترل TextBox1 تعریف کردی رو برات میاره . اما فرض کن شما فرم 2 رو باز کردی و تغییری در محتوای تکست TExtBox1 اون دادی و می خوای وقتی که فرم 2 بسته می شه مقدار درون TextBox درون فرم 2 رو در TextBox درون فرم 1 نشون بدی . در اینجا به نظر میاد که باید بعد از ساختن شی f از کلاس Form2 اون رو با متد f.Show() اجرا کنی . اما اگه این کار رو انجام بدی دیگه مقدار جدید پاس داده نمی شه به Form1. چون دستور Show() کامپایلر رو بعد از بسته شدن فرم 2 به خط بعد از f.Show() برنمی گردونه . برای برگشتن کامپایلر به خط بعد لازمه از f.ShowDialog() استفاده کنی.

کد:
private void button1_Click(object sender, EventArgs e)
        {
            Form2 f = new Form2();
            f.ShowDialog();
            textBox1.Text = f.Controls["TextBox1"].Text;
        }
 

611

Registered User
تاریخ عضویت
11 سپتامبر 2007
نوشته‌ها
168
لایک‌ها
0
محل سکونت
سوال بعدی
یه حالت دیگه هم اینه که میخوای مطالب داخل یه textbox رو از داخل یه فرم بگیری و بعداون رو داخل یه فرم دیگه نشون بدی.

2 تا کار میتونی بکنی .

1-فرم اول فرم رو پدر تعریف کنی، بعد تو فرم دوم ( فرزند) یک متغیر از جنس پدر تعریف کنی ، سپس با cast کردن به مقدار text box برسی

کد:
[LEFT]
  Form frm = this.MdiParent;
           string str=((Form1)frm).textBox1.Text;

            MessageBox.Show(str);
[/LEFT]

2- مقدار text box رو تو یه رشته ی استاتیک بریزی ، سپس تو فرم دوم اون رو صدا بزنی

فرم اول

کد:
[LEFT]
public static string str;
        private void button1_Click(object sender, EventArgs e)
        {
            str = textBox1.Text;
        
         }[/LEFT]


حالا میخوای تو فرم دوم ، مقدار textbox فرم اول رو بخونی و نشون بدی

کد:
[LEFT] MessageBox.Show( Form1.str);[/LEFT]
 

هستی

همکاربازنشسته
تاریخ عضویت
12 آپریل 2007
نوشته‌ها
3,887
لایک‌ها
708
سن
35
محل سکونت
My Dreams
سلام يه سوال فوري
يه برنامه که شکل زير رو ايجاد کنه و وقتي روي هر دکمه کليک مي کنيم اون دکمه 10 تا به سمتي که روش نوشته شيفت پيدا کنه يعني مثلا با کليک روي left اون 10 تا به سمت چپ بره و از دکمه ok فاصله بگيره
در ضمن آیا مقاله انگلیسی دیگه ای در زمینه فرق سی شارپ با vb.net سی شارپ و جاوا و سی شارپ با ویژوال سی پلاس پلاس البته هر همه رو می خوام یعنی هر 3 موضوع وجود داره؟:wacko:
 

فایل های ضمیمه

  • untitled.JPG
    untitled.JPG
    4.5 KB · نمایش ها: 4
وضعیت
موضوع بسته شده است.
بالا