امتیاز موضوع:
  • 5 رأی - میانگین امتیازات: 4.2
  • 1
  • 2
  • 3
  • 4
  • 5
ناپیک آموزش visual c++ .net 2008
نویسنده پیام
محمد حسینی آفلاین
کاربر فعال بخش رباتیک
****

ارسال‌ها: 1,363
موضوع‌ها: 139
تاریخ عضویت: آذر ۱۳۸۴

تشکرها : 974
( 1780 تشکر در 620 ارسال )
ارسال: #1
ناپیک آموزش visual c++ .net 2008
سلام !
من چند روزه برای پروژه درس پیشرفته رفتم سراغ vc++.net .
بنظرم اصلا وحشتناک نیست! خیلی سریعتر از اونی که فکر میکردم پروژه تموم شد. می خوام خیلی ساده شروع کنم قدم به قدم راهنمایی کنم هر کی دوست داره راه بیفته. اینطوری یه تکونی به این بخش سایت میدیم و همه میتونیم به هم کمک کنیم. من خودمم سوال زیاد دارم. اصلا برای همین این تاپیک رو باز کزدم که شما راه بیفتین و مشکلات منو حل کنید ! Biggrin
هر کی هم هرچی بلده اینجا بذاره. هرجا هم چیزی اشتباه گفتم اصلاحش کنین. فقط پست اضافی نذارین که اگه تاپیک خوب شد بچسبونیمش بالا !

من با این فرض شروع می کنم که با c و c++ آشنایی دارین. اگه یکم وی بی هم کار کرده باشین دیگه فوق العاده سریع پیش میرین.
فکر می کنم آموزش ها یکم پراکنده باشه و اصولی در نیاد! بهرحال اگه خوب نشد ببخشید . . .

به راه بادیه رفتن، به از نشستن باطل ------------- اگرچه وصل نیابم، بقدر وسع بکوشمRolleyes
۰۱-خرداد-۱۳۸۸, ۱۳:۴۴:۴۰
ارسال‌ها
پاسخ
تشکر شده توسط : sarv, sav68, lord_viper, اشک, HoseinVig, t3r!p3000, farhadLED
محمد حسینی آفلاین
کاربر فعال بخش رباتیک
****

ارسال‌ها: 1,363
موضوع‌ها: 139
تاریخ عضویت: آذر ۱۳۸۴

تشکرها : 974
( 1780 تشکر در 620 ارسال )
ارسال: #2
RE: ناپیک آموزش visual c++ .net 2008
ویژوال استودیو 2008 رو باز کنید.
منوی file - new - project
قسمت project type گزینه visual c++ و templates رو windows forms application انتخاب کنید. پایینش هم اسم پروژه و آدرس . . .

چند تا پنجره تو ویژوال استودیو برامون خیلی مهمه. از منوی view
solution explorer
Toolbox
otherwindows->properties windows

این پنجره ها اگه تو محیط ویژوال استودیو نبود از همون منوی view بیاردشون.

از پنجره solution explorer روی form1.h دوبار کلیک کنید تا فرم نشون داده بشه.
پنجره toolbox قسمت common controls روی button دوبار کلیک کنید تا یه کنترل button رو فرم درست بشه. همون قسمت روی کنترل textbox دوبار کلیک کنید تا یکی از اون هم رو فرم ساخته بشه.
کنترل ها رو می تونین رو فرم جابجا کنید.
روی کنترل button که ساختین دوبار کلیک کنید تا صفحه کد باز بشه.
این صفحه کدهای مربوط به form1.h هست.
این کد رو پیدا کنید.
کد:
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
             }
این کد مربوط به رویداد کلیک اون button. بین اون دوتا براکت باید کدها رو بنویسین.
اینو بنویسین:
کد:
textBox1->Text = "iranvig";

باید اینطوری شده باشه.
کد:
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
                 textBox1->Text = "iranvig";
             }

f7 رو بزنید تا برنامه کامپایل بشه. (منوی build ->build solution)
f5 رو بزنین تا برنامه اجرا بشه.(منوی debug -> start debugging)

خب. این برای این بود که ترستون بریزه ! Biggrin

به راه بادیه رفتن، به از نشستن باطل ------------- اگرچه وصل نیابم، بقدر وسع بکوشمRolleyes
(آخرین ویرایش در این ارسال: ۰۱-خرداد-۱۳۸۸, ۱۴:۰۲:۴۴، توسط محمد حسینی.)
۰۱-خرداد-۱۳۸۸, ۱۴:۰۱:۵۳
ارسال‌ها
پاسخ
تشکر شده توسط : sarv, sav68, lord_viper, alaska, اشک, HoseinVig, t3r!p3000
محمد حسینی آفلاین
کاربر فعال بخش رباتیک
****

ارسال‌ها: 1,363
موضوع‌ها: 139
تاریخ عضویت: آذر ۱۳۸۴

تشکرها : 974
( 1780 تشکر در 620 ارسال )
ارسال: #3
RE: ناپیک آموزش visual c++ .net 2008
هر کنترل برای خودش یه سری خصوصیات داره. مثلا همون کنترل textbox که به برنامه اضافه کردین رو انتخاب کنید. تو پنجره properties خصوصیاتش رو نشون میده. همونجا می تونین. تغییرش بدین. مثلا خاصیت text . هرچی برای text ینویسین روی textbox نشون داده میشه. این پروپرتی رو خیلی از کنترل ها دارن.
یکی از مهمترین پروپرتی هر شی پروپرتی name اون هست. مثلا name این تکست باکس رو به txt1 تغییر بدین. از این به بعد برنامتون این کنترل رو به اسم txt1 میشناسه و تو کد نویسی باید از این اسم استفاده کنید. حالا کد مثال قبل رو باید به این کد تغییر بدین.
کد:
txt1->Text = "iranvig";

تو محیط کدنویسی برای دسترسی به پروپرتی های یه کنترل باید از کاراکترهای خط تیره و بزرگتر استفاده کنید.
کد:
->

کد نویسی رویداد های دیگه کنترل ها :
یه کنترل Label رو فرم بذارین و خاصیت text اون رو به exit تغییر بدین. اسمش رو هم بزارین lblExit

بالای همون پنجره properties به آیکون کوچیک هست که روش عکس صاعقه داره ! رو اون کلیل کنید تا رویدادها نشون داده بشه.
رو هر رویدادی که می خواید دوبار کلیک کنید تا کدش بیاد. مثلا mousemove

این کد رو توش بنویسین.
کد:
this->Close();

باید اینطوری شده باشه !
کد:
private: System::Void lblExit_MouseMove(System::Object^  sender, System::Windows::Forms::MouseEventArgs^  e) {
                 this->Close();
             }

برنامه رو اجرا کنید و موس رو ببرین رو lblExit . . .
**
نکته برنامه نویسی C++ :
this یه پوینتر به شی کلاسی که توش هست. اینجا میشه form1
اگه دقت کنید کد ها رو دارین تو کلاس form1 مینویسین.

به راه بادیه رفتن، به از نشستن باطل ------------- اگرچه وصل نیابم، بقدر وسع بکوشمRolleyes
(آخرین ویرایش در این ارسال: ۰۱-خرداد-۱۳۸۸, ۱۷:۴۷:۳۴، توسط محمد حسینی.)
۰۱-خرداد-۱۳۸۸, ۱۷:۴۵:۰۶
ارسال‌ها
پاسخ
تشکر شده توسط : sarv, sav68, lord_viper, alaska, اشک, HoseinVig, t3r!p3000, crafcrab, shamim_no
sarv آفلاین
عضو افتخاری
****

ارسال‌ها: 587
موضوع‌ها: 93
تاریخ عضویت: تير ۱۳۸۷

تشکرها : 2137
( 3495 تشکر در 882 ارسال )
ارسال: #4
RE: ناپیک آموزش visual c++ .net 2008
خود نرم افزار ويزوال استيديو رو ميشه بذارين دانلود كنم
راستي با سي شارپ .نت فرق داره
سپاس و دوصد بدرود از اين پست شما

----------------------------------------------------
بعد چند روز اين پست رو پاك كنيد

۰۱-خرداد-۱۳۸۸, ۲۳:۴۴:۰۶
وب سایت ارسال‌ها
پاسخ
محمد حسینی آفلاین
کاربر فعال بخش رباتیک
****

ارسال‌ها: 1,363
موضوع‌ها: 139
تاریخ عضویت: آذر ۱۳۸۴

تشکرها : 974
( 1780 تشکر در 620 ارسال )
ارسال: #5
RE: ناپیک آموزش visual c++ .net 2008
نقل قول: خود نرم افزار ويزوال استيديو رو ميشه بذارين دانلود كنم
راستي با سي شارپ .نت فرق داره
سپاس و دوصد بدرود از اين پست شما

ویژوال استودیو دات نت که حجمش خیلی زیاده. حتی فکر نمی کنم تو یه سی دی جا بشه !

vc++.net خیلی با سی شارپ فرق نمی کنه ! من خودم با سی شارپ شروع کردم ! سی شارپ یکم راحتره.

--------------------------------------------------------

شی استرینگ :

با دستور زیر می تونید یه متغیر رشته ای تعریف کنید.

کد:
String^ str1;
این کد یه متغیر رشته ای به اسم str1 درست میکنه.
در مورد استرینگ ها بعدا توضیح میدم. الان می خوام در مورد تبدیل داده های عددی و رشته ای بگم.

یه پروژه جدید باز کنید و شی button و یه شی textbox به نام txtNum ایجاد کنید.

برای button کد زیر رو بنویسین.
کد:
                 int num = 10;
                 txtNum->Text = num.ToString();
برای اینکه یه متغیر عددی رو به استرینگ تبدیل کنید (یا برای نمایشش تو یه تکست باکس) باید از دستور ToString استفاده کتید.


یه پروژه دیگه دیگه باز کنید و یه button و سه تا تکست باکس به اسم txtNum1 و txtNum2 و txtNum3 درست کنید.

کد زیر رو برای button بنویسین.
کد:
                int num1, num2, num3;
                num1 = Int32::Parse(txtNum1->Text);
                num2 = Int32::Parse(txtNum2->Text);
                num3 = num1 + num2;
                txtNum3->Text = num3.ToString();
کار این برنامه اینه که دو تا عدد از txtNum1 و txtNum2 بگیره و با هم جمعشون کنه و تو txtNum3 نشون بده.
وقتی می خواین یه عدد رو از طریق textbox بگیرین برای مقدار دادن به یه متغیر عددی حتما باید تبدیلش کنید.
این کار رو با دستور Int32::Parse انجام میدیم. ورودیش یه رشته و خروجیش داده int
معادل های دیگه هم داره مثل
کد:
Double::Parse
ساعت 10 کلاس دارم باید برم ! فعلا تا همینجا باشه . . .
اگه سوال داشتین بپرسین.

به راه بادیه رفتن، به از نشستن باطل ------------- اگرچه وصل نیابم، بقدر وسع بکوشمRolleyes
(آخرین ویرایش در این ارسال: ۰۲-خرداد-۱۳۸۸, ۰۹:۵۶:۱۶، توسط محمد حسینی.)
۰۲-خرداد-۱۳۸۸, ۰۹:۵۴:۱۸
ارسال‌ها
پاسخ
تشکر شده توسط : sav68, lord_viper, alaska, اشک, HoseinVig, t3r!p3000
ajlajlajl آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 2,192
موضوع‌ها: 70
تاریخ عضویت: مهر ۱۳۸۴

تشکرها : 932
( 2618 تشکر در 1020 ارسال )
ارسال: #6
RE: ناپیک آموزش visual c++ .net 2008
این قسمتش اینجوریه یا کلا با VC++6 فرق داره؟ اونتو خیلی دردسرش بیشتر از اینا بود؟؟
تبدیل رشته به عدد با اینم فکر کنم بشه:
کد:
Dim a as int = (int)"123"
راستی این ^ همون * قدیمی برای تعریف اشاره گره؟

میزان رای دشمن است!
[تصویر:  cff100.png]
۰۲-خرداد-۱۳۸۸, ۱۹:۱۵:۳۲
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : alaska, t3r!p3000
محمد حسینی آفلاین
کاربر فعال بخش رباتیک
****

ارسال‌ها: 1,363
موضوع‌ها: 139
تاریخ عضویت: آذر ۱۳۸۴

تشکرها : 974
( 1780 تشکر در 620 ارسال )
ارسال: #7
RE: ناپیک آموزش visual c++ .net 2008
نقل قول: این قسمتش اینجوریه یا کلا با VC++6 فرق داره؟ اونتو خیلی دردسرش بیشتر از اینا بود؟؟

vc++ 6 که اصلا windows forms application نداشت! اونجا mfc بود. این windows forms application با دات نت اومده و خیلی گرافیکی نوشتن رو راحت کرده. البته اینم از کلاس های mfc استفاده می کنه + دات نت. vc++6 که خیلی وحشتناک بود. اصلا به اون فکر نکن ! mfc هم داره از ساپرت خارج میشه.

نقل قول: تبدیل رشته به عدد با اینم فکر کنم بشه:
کد:
Dim a as int = (int)"123"
این که کد وی بی ! تو C++ دستور dim نداریم ! امتحان کردی ؟!


نقل قول: راستی این ^ همون * قدیمی برای تعریف اشاره گره؟
این علامت یه چیزیه شبیه همون * و &. یه جور ریفرنس حرفه ای تر ! برای کلاس های پیچیده دیگه اون ریفرنس ها جواب نمیده. باید از هندل استفاده بشه. این علامت کارش تعریف هندل هست. خیلی وقت ها هم با دستور gcnew استفاده میشه. gcnew خروجیش یه هندل از نوع اون شی. جلوتر بهش میرسیم. متاسفانه منم بیشتر از این در این مورد اطلاعات ندارم.
برای منم عجیبه چرا با String حتما این علامت باید باشه. جاهای دیگه مثلا برای گرفتن هندل یه فرم که دستور gcnew هم استفاده میشه مفهومش برام جا افتاده (همون گرفتن هندل) ولی استرینگ !؟!؟

به راه بادیه رفتن، به از نشستن باطل ------------- اگرچه وصل نیابم، بقدر وسع بکوشمRolleyes
(آخرین ویرایش در این ارسال: ۰۲-خرداد-۱۳۸۸, ۲۰:۱۲:۲۹، توسط محمد حسینی.)
۰۲-خرداد-۱۳۸۸, ۲۰:۱۱:۱۴
ارسال‌ها
پاسخ
تشکر شده توسط : lord_viper, alaska, sav68, t3r!p3000
ajlajlajl آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 2,192
موضوع‌ها: 70
تاریخ عضویت: مهر ۱۳۸۴

تشکرها : 932
( 2618 تشکر در 1020 ارسال )
ارسال: #8
RE: ناپیک آموزش visual c++ .net 2008
(۰۲-خرداد-۱۳۸۸, ۲۰:۱۱:۱۴)Sp!d3rm4n نوشته است:
نقل قول: تبدیل رشته به عدد با اینم فکر کنم بشه:
کد:
Dim a as int = (int)"123"
این که کد وی بی ! تو C++ دستور dim نداریم ! امتحان کردی ؟!

اصل نیته BiggrinTongueWhistle چیکار به تعریفش داری. قسمت تبدیلشو بچسب Wink
بیا :
کد:
int a = (int)"123"

میزان رای دشمن است!
[تصویر:  cff100.png]
۰۳-خرداد-۱۳۸۸, ۰۹:۳۰:۵۷
وب سایت ارسال‌ها
پاسخ
محمد حسینی آفلاین
کاربر فعال بخش رباتیک
****

ارسال‌ها: 1,363
موضوع‌ها: 139
تاریخ عضویت: آذر ۱۳۸۴

تشکرها : 974
( 1780 تشکر در 620 ارسال )
ارسال: #9
RE: ناپیک آموزش visual c++ .net 2008
سلام
نزدیک امتحانات و وقتم خیلی کمه. معذرت می خوام اگه دیر به دیر ادامه میدم و نمی تونم زیاد بنویسم.

من یه پروژه جدید باز کردم و اسمش هست Project 1
یه textbox و یه button هم داره.
تا حالا کدش شده این : (اگه اینجا بررسیش سخته خودتون یه پروژه باز کنید و کدها رو اونجا ببینین)

کد:
#pragma once


namespace Project1 {


using namespace System;

using namespace System::ComponentModel;

using namespace System::Collections;

using namespace System::Windows::Forms;

using namespace System::Data;

using namespace System::Drawing;


/// <summary>

/// Summary for Form1

///

/// WARNING: If you change the name of this class, you will need to change the

/// 'Resource File Name' property for the managed resource compiler tool

/// associated with all .resx files this class depends on. Otherwise,

/// the designers will not be able to interact properly with localized

/// resources associated with this form.

/// </summary>

public ref class Form1 : public System::Windows::Forms::Form

{

public:


Form1(void)


{



InitializeComponent();



//



//TODO: Add the constructor code here



//


}


protected:


/// <summary>


/// Clean up any resources being used.


/// </summary>


~Form1()


{



if (components)



{




delete components;



}


}

private: System::Windows::Forms::Button^ button1;

private: System::Windows::Forms::TextBox^ textBox1;

protected:


private:


/// <summary>


/// Required designer variable.


/// </summary>


System::ComponentModel::Container ^components;

#pragma region Windows Form Designer generated code


/// <summary>


/// Required method for Designer support - do not modify


/// the contents of this method with the code editor.


/// </summary>


void InitializeComponent(void)


{



this->button1 = (gcnew System::Windows::Forms::Button());



this->textBox1 = (gcnew System::Windows::Forms::TextBox());



this->SuspendLayout();



//



// button1



//



this->button1->Location = System::Drawing::Point(37, 27);



this->button1->Name = L"button1";



this->button1->Size = System::Drawing::Size(139, 42);



this->button1->TabIndex = 0;



this->button1->Text = L"button1";



this->button1->UseVisualStyleBackColor = true;



this->button1->Click += gcnew System::EventHandler(this, &Form1::button1_Click);



//



// textBox1



//



this->textBox1->Location = System::Drawing::Point(37, 104);



this->textBox1->Name = L"textBox1";



this->textBox1->Size = System::Drawing::Size(139, 20);



this->textBox1->TabIndex = 1;



//



// Form1



//



this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);



this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;



this->ClientSize = System::Drawing::Size(284, 264);



this->Controls->Add(this->textBox1);



this->Controls->Add(this->button1);



this->Name = L"Form1";



this->Text = L"Form1";



this->ResumeLayout(false);



this->PerformLayout();



}
#pragma endregion

private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {



}

};
}
اینا کد توی فایل Form1.h هستن. خوب دقت کنید. کل کد توی یه namespace به نام Project1 یعنی اسم پروژه هست.
بعد از اون نیم اسپیس هایی که می خواییم استفاده کنیم رو تعریف می کنیم. (using)
بعد از اینا کلاس فرم شروع میشه.
از public ref class Form1 تا اون آخر براکت بسته و سمی کولون مربوط به کلاس فرم میشه. (براکت بعدش برای نیم اسپیس project1)
اون وسط تو کلاس فرم یه قسمت هست که با #pragma region شروع میشه و آخرش هم #pragma endregion هست. این مربوط میشه به خصوصیات فرم و اشیا روش و ما کاری بهش نداریم. هر تغییری که با طراحی رو فرم انجام میدیم خود IDE این کدها رو تولید می کنه. خیلی وقتها از کدهایی که اینتو هست میشه ایده گرفت. مثلا اینکه چطوری میشه اندازه یه کنترل رو تغییر داد یا تغییر رنگ و . . .
پایینش تعریف رویداد ها و توابع عضو فرم شروع میشه. اینجا دیگه شما تو کلاس فرم هستین و هرچی که بخاین میتونین بنویسین.
مثلا می تونید متغیر تعریف کنید. متغیری که اینجا بیرون به تابع یا رویداد تعریف کنید توی همه توابع کلاس فرم قابل استفاده. مثلا این رو ببینین :
کد:
.
.
.
#pragma endregion
int num;
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
num = 10;
textBox1->Text = num.ToString();
}
اگه با کلاس ها تو C++ آشنا باشید باید بدونید که قبل اون تعریف متغیر (که توی کلاس تعریف شده) می تونیم از public، private وprotected استفاده کنیم. مثلا اگه کد رو اینطوری بنویسیم از بیرون کلاس (مثلا یه فرم دیگه) هم میشه به اون متغیر دسترسی پیدا کرد.
کد:
.
.
.
#pragma endregion
public:int num;
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
num = 10;
textBox1->Text = num.ToString();
}
البته یه شرطی هم داره که بعدا بهش میرسیم.

همینطور تو این قسمت میتونید توابع عضو کلاس فرم رو هم تعریف کنید.
مثلا من یه تابع تعریف می کنم که دو عدد رو با هم جمع کنه و خروجی بده :
کد:
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
textBox1->Text = add(2, 3).ToString();
}

private: int add(int num1, int num2) {
return (num1 + num2);
}
چون خروجی تابع add یه int بود برای نمایشش تو textbox از ToString استفاده کردم. اون private قبلش هم میتونیستید ننویسین. در اینصورت فکر می کنم از حوزه ای که قبلا مشخص شده پیروی می کنه. بالاش رویداد کلیک button1 با private تعریف شده پس تابع add هم همینطور . . . یعنی بیرون از کلاس فرم در دسترس نیست و فقط توی همین کلاس فرم میشه ازش استفاده کرد.

همونطور که میبینین اینجا بحث های شی گرایی خیلی داغ شده (برعکس وی بی 6) و برنامه نویسی اصولی تره ! من که از وقتی c++ رو شروع کردم اوایل برام سخت بود و عذاب میکشیدم ! ولی الان عادت کردم و حتی از برنامه نویسی با C++ لذت میبرم ! اگه براتون عجیبه یکم تحمل کنید ! کم کم درست میشه !
هدفم از این پست این بود با محیطی که توش کد مینویسین آشنا بشین ! چون میدونم اوایل اصلا بهش دقت نمیکنین. حالا چشم و گوشتون بازتر میشه!
خوش باشین !Question

راستی اون کد تبدیل استرینگ رو امتحان کردم نشد ! شما امتحان کردی ؟!

به راه بادیه رفتن، به از نشستن باطل ------------- اگرچه وصل نیابم، بقدر وسع بکوشمRolleyes
(آخرین ویرایش در این ارسال: ۰۳-خرداد-۱۳۸۸, ۱۷:۱۷:۲۵، توسط محمد حسینی.)
۰۳-خرداد-۱۳۸۸, ۱۷:۰۶:۲۵
ارسال‌ها
پاسخ
تشکر شده توسط : alaska, lord_viper, اشک, t3r!p3000, shamim_no
محمد حسینی آفلاین
کاربر فعال بخش رباتیک
****

ارسال‌ها: 1,363
موضوع‌ها: 139
تاریخ عضویت: آذر ۱۳۸۴

تشکرها : 974
( 1780 تشکر در 620 ارسال )
ارسال: #10
RE: ناپیک آموزش visual c++ .net 2008
سلام ! Biggrin

یکم عجله دارم ! Whistle

اضافه کردن فرم :
یه پروژه باز کنید و یه button رو form1 بزارین.

رو پنجره solution explorer قسمت header files راست کلیک کنید و add new item رو انتخاب کنید. windows form رو انتخاب کنید و یه اسم برای فرم انتخاب کنید. (form2)
برگردین توی form1 و کدهاش رو بیارین.

اون بالا زیر #pragma once فایل form2 رو include کنید.
کد:
#pragma once
#include "form2.h"

برای رویداد کلیک button هم اینو بنویسین.
کد:
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
                form2^ frm = gcnew form2;
                frm->ShowDialog();
             }
form2 اسم کلاسی هست که توی form2.h تعریف کردین. اون علامت ^ هم یعنی می خواین یه هندل تعریف کنید. gcnew یه هندل از نوع شی که بعدش میاد (form2) بر میگردونه. اینجا ما شی از کلاس form2 ساختیم و هندلش رو گذاشتیم تو frm . تابع showdialog فرم رو نشون میده.
برگردین تو صفحه desing فرم2 و تو پنجره properties خاصیت StartPosition ره به manual تغییر بدین. برگردین توی form1 و کد button رو اینطوری بنویسین :
کد:
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
                form2^ frm = gcnew form2;
                frm->Location = System::Drawing::Point(Cursor->Current->Position.X, Cursor->Current->Position.Y);
                frm->ShowDialog();
             }
مکان نمایش form2 با مختصان موس تعیین میشه. همینطوری با پروپرتی ها کار کنید . . . (یک نمونه بود)

messagebox :

با این کد میتونین به پیام به کاربر بدین :
کد:
MessageBox::Show("iranivg");
پارامتر اول متن پیغامه. پارامتر دوم تایتل پنجره. سومی کلید ها و چهارمی آیکون

کد:
MessageBox::Show("are you sure to exit ?", "exit", MessageBoxButtons::YesNo, MessageBoxIcon::Question);

برای اینکه بفهمین کاربر کدوم گزینه رو امتخاب کرده از متغیر DialogResult استفاده می کنیم.
کد:
                 ::DialogResult r;
                 r = MessageBox::Show("are you sure to exit ?", "exit", MessageBoxButtons::YesNo, MessageBoxIcon::Question);
                 if (r == ::DialogResult::Yes)
                 {
                     this->Close();
                 }

نگران نباشید. وقتی :: میزنین یه لیست باز میشه که میتونید گزینه ها رو از توش انتخاب کنید. مثلا کلیدها یا آیکون ها . . .
راستی موقع کدنویسی از ctrl + enter استفاده می کنید دیگه ؟!

به راه بادیه رفتن، به از نشستن باطل ------------- اگرچه وصل نیابم، بقدر وسع بکوشمRolleyes
۰۵-خرداد-۱۳۸۸, ۲۲:۴۸:۵۵
ارسال‌ها
پاسخ
تشکر شده توسط : lord_viper, alaska, t3r!p3000
محمد حسینی آفلاین
کاربر فعال بخش رباتیک
****

ارسال‌ها: 1,363
موضوع‌ها: 139
تاریخ عضویت: آذر ۱۳۸۴

تشکرها : 974
( 1780 تشکر در 620 ارسال )
ارسال: #11
RE: ناپیک آموزش visual c++ .net 2008
سلام!
بالاخره امتحانات تموم شد و برگشتم خونه !

می خوام این تاپیک رو ادامه بدم. البته زیاد فرصت نمیکنم بیام اینترنت. درگیر اسباب کشی و . . . (درست نوشتم ؟ Biggrin )

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

به راه بادیه رفتن، به از نشستن باطل ------------- اگرچه وصل نیابم، بقدر وسع بکوشمRolleyes
۰۵-تير-۱۳۸۸, ۱۰:۴۶:۳۸
ارسال‌ها
پاسخ
تشکر شده توسط : اشک


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  [سوال] امکان اتصال Visual Studio با VMware هست ؟ nImaarek 3 1,840 ۱۸-فروردین-۱۳۹۵, ۱۴:۳۶:۱۴
آخرین ارسال: salehjg
  مشکل visual c++ 6 با نرم افزارهای جدید microsoft cnmeysam 1 2,193 ۲۸-فروردین-۱۳۹۱, ۰۶:۲۹:۱۰
آخرین ارسال: one hacker alone
  سوال مهم:مشکل با نداشتن برخی گزینه ها در VC++2008 Sunderlan 0 1,554 ۰۷-دى-۱۳۸۹, ۰۸:۵۲:۴۳
آخرین ارسال: Sunderlan
  اسمبلی در visual c++.net mehrdadg11 0 2,413 ۰۱-آبان-۱۳۸۹, ۲۱:۳۶:۵۰
آخرین ارسال: mehrdadg11
  کار با mfc راحت تره یا .net newmusic 1 1,976 ۱۲-خرداد-۱۳۸۸, ۲۲:۱۲:۲۳
آخرین ارسال: محمد حسینی
  راهنمایی در مورد visual c++ مشکل در ادرس دهی دکمه newmusic 5 4,289 ۱۱-خرداد-۱۳۸۸, ۲۳:۰۷:۰۰
آخرین ارسال: newmusic
Cool کمک برای Visual c++2005 شدیدا گیج زدم یک راهنمایی نیاز دارم(محیط Vc++ newmusic 1 2,220 ۰۸-اردیبهشت-۱۳۸۸, ۲۳:۴۶:۵۴
آخرین ارسال: arashrj
  مشکل با clrscr در Visual C++6 VBYOFSKI 5 8,243 ۲۱-مرداد-۱۳۸۷, ۱۲:۵۶:۳۲
آخرین ارسال: arash_ele
  C++ یا Visual C++ یا Visual C++.net x.halo360 16 10,680 ۱۹-اسفند-۱۳۸۶, ۲۲:۴۷:۰۰
آخرین ارسال: yeketaz
  Image Processing در Visual C++ 6.0 ali_oop 4 4,808 ۲۶-شهریور-۱۳۸۶, ۰۰:۰۱:۱۷
آخرین ارسال: lord_viper

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS