PDA

View Full Version : سوال: چرا کامپایل نمیشه؟



adonis27
شنبه 16 آذر 1392, 01:48 صبح
سلام تازه میخوام C#‎‎ یاد بگیرم و دارم تورین میکنم تو ویژوال استدیو
طبق آموزش کد نوشتم نمیدونم چرا ارور میگیره و اجرا نمیشه

این از اررور



------ Build started: Project: hello user, Configuration: Debug x86 ------
c:\users\adonis\documents\visual studio 2010\Projects\hello user\hello user\Form1.cs(21,13): error CS1502: The best overloaded method match for 'System.Windows.Forms.MessageBox.Show(string, string, System.Windows.Forms.MessageBoxButtons)' has some invalid arguments
c:\users\adonis\documents\visual studio 2010\Projects\hello user\hello user\Form1.cs(21,78): error CS1503: Argument 3: cannot convert from 'string' to 'System.Windows.Forms.MessageBoxButtons'

Compile complete -- 2 errors, 0 warnings
Build started 12/07/2013 02:16:37 ق.ظ.
ResolveAssemblyReferences:
A TargetFramework profile exclusion list will be generated.
CoreResGen:
All outputs are up-to-date.
GenerateTargetFrameworkMonikerAttribute:
Skipping target "GenerateTargetFrameworkMonikerAttribute" because all output files are up-to-date with respect to the input files.
CoreCompile:
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Csc. exe /noconfig /nowarn:1701,1702 /nostdlib+ /platform:x86 /errorreport:prompt /warn:4 /define:DEBUG;TRACE /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\ Profile\Client\Microsoft.CSharp.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\ Profile\Client\mscorlib.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\ Profile\Client\System.Core.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\ Profile\Client\System.Data.DataSetExtensions.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\ Profile\Client\System.Data.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\ Profile\Client\System.Deployment.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\ Profile\Client\System.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\ Profile\Client\System.Drawing.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\ Profile\Client\System.Windows.Forms.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\ Profile\Client\System.Xml.dll" /reference:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\ Profile\Client\System.Xml.Linq.dll" /debug+ /debug:full /filealign:512 /optimize- /out:"obj\x86\Debug\hello user.exe" /resource:obj\x86\Debug\hello_user.Form1.resources /resource:obj\x86\Debug\hello_user.Properties.Resou rces.resources /target:winexe Form1.cs Form1.Designer.cs Program.cs Properties\AssemblyInfo.cs Properties\Resources.Designer.cs Properties\Settings.Designer.cs "C:\Users\adonis\AppData\Local\Temp\.NETFramework,V ersion=v4.0,Profile=Client.AssemblyAttributes.cs"

Build FAILED.

Time Elapsed 00:00:00.25
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========


اینم از عکس

وقتی f5 میزنم
http://up.ashiyane.org/images/4tmst6lexpqs5t7qny7j_thumb.jpg (http://up.ashiyane.org/viewer.php?file=4tmst6lexpqs5t7qny7j.jpg)

Aalibeigi
شنبه 16 آذر 1392, 08:40 صبح
سلام
مشکلاتت اینها هستن
1-System.Windows.Forms.MessageBox.Show(string, string, System.Windows.Forms.MessageBoxButtons)

این یعنی آرگومان های اشتباهی رو به massagebox.show دادی و massagebox این ورودی ها رو نداره.

2- cannot convert from 'string' to 'System.Windows.Forms.MessageBoxButtons'

این یکی هم یعنی نمیتونه دکمه رو به رشته تبدیل کنه.
باید botton.text رو به رشته تبدیل کنی نه خود دکمه رو.
انگار همین دو تا ایراد رو داری.:لبخند:

adonis27
شنبه 16 آذر 1392, 10:57 صبح
دادا این کدشه

namespace hello_user
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void btnok_Click(object sender, EventArgs e)
{
MessageBox.Show("hello" + txtname.Text + "welcome", "to visual", "c#");
}

private void btnexite_Click(object sender, EventArgs e)
{
this.Close();
}
}
}

adonis27
شنبه 16 آذر 1392, 11:05 صبح
این کد با کد بالا چه فرقی میکنه که اجرا میشه

MessageBox.Show("Hello " + txtname.Text +"! Welcome to Visual C# 2005.","Hello User Message");

rahnema1
شنبه 16 آذر 1392, 11:09 صبح
سلام، به جای کاما در مسیج باکس علامت + بذار اگه هدفت فقط چاپ متن در مسیج باکسه

rahnema1
شنبه 16 آذر 1392, 11:12 صبح
دوست عزیز اولی دوتا کاما داشت دومی یک دونه داره توی اولی وقتی دوتا کاما می ذاری یعنی واسه پارمتر سومی که با دو تا کاما از هم جدا میشن سی شارپ از شما انتظار داره پارامتر سوم ازنوع MessageBoxButtons باشه ولی شما از نوع string گذاشتید ولی وقتی شما با یک کاما مسیج باکس تشکیل بدید اولین پارامتر پیغام شما و دومی عنوان هست

adonis27
شنبه 16 آذر 1392, 11:15 صبح
داداشه گلم میگم این دوتا کد هیچ فرقی باهم ندارن چرا کد من(اولی) اجرا نمیشه ولی کد خوده آموزش اجرا میشه؟

MessageBox.Show("hello" + txtname.Text + "welcome", "to visual", "C#‎");


MessageBox.Show("Hello " + txtname.Text +"! Welcome to Visual C#‎ 2005.","Hello User Message");

rahnema1
شنبه 16 آذر 1392, 11:21 صبح
گفتم که اولی یه دوتا کاما داره بنابراین اجرا نمیشه ولی دومی یه دونه کاما داره ولی اجرا میشه. بذار بیشتر توضیح بدم دستور مسیج باکس میتونه به 21 روش اجرا بشه یعنی 21 روش پارامتر ورودی داشته باشه از جمله اینکه سه ورودی داشته باشه ولی توی هیچ کدوم از این 21 مورد واسه اون تعریف نشده که مسیج باکس 3 ورودی داشته باشه و پارامتر سوم هم یک string باشه توی کد اولیکه شما نوشتید سه تا ورودی داریم اولیش "hello" + txtname.Text + "welcome" و دومیش "to visual" و سومیش "C#‎‎‎‎" که با کاما از هم جدا شدند و این غلطه

adonis27
شنبه 16 آذر 1392, 11:30 صبح
من کد خودمو درست کردم حالا چرا این کد رو اجرا میگیرم قسمت دوم که باید چاپ بشه ولی نمیشه یعنی این باید چاپ بشه visual C#

MessageBox.Show("hello " + txtname.Text + "welcome to","visual C#‎");

mthreat.info
شنبه 16 آذر 1392, 12:27 عصر
من کد خودمو درست کردم حالا چرا این کد رو اجرا میگیرم قسمت دوم که باید چاپ بشه ولی نمیشه یعنی این باید چاپ بشه visual C#

MessageBox.Show("hello " + txtname.Text + "welcome to","visual C#‎");
عزیز جان ببین تو داری عنوان رو دادی visual C#‎ ولی متن رو دادی hello+متن داخل تکستباکس+welcome to
میسج باکس ایطوری هست
متن پیام+متن عنوان+دکمه ها +آیکون+دکمه ی پیشفرض+...
مثلا

MessageBox.Show("متن پیام", "عنوان", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1);

همون طور که دیدی با , قسمتهای مختلف جدا میشن!