Old 25-08-2011, 12:45 PM
  post #1
စႏိုးေလး
MF Contributor
 
စႏိုးေလး's Avatar
 
အသင္း၀င္ေန႔စြဲ: Jun 2011
တည္ေနရာ: မန္းေလး
ေရးသားခ်က္မ်ား: 185
ႏိုင္ငံအလံ: Users Flag!
ေက်းဇူးတင္စကား: 2,892
ပို႔စ္ 188 ခုအတြက္ 1,653 ဦးမွ ေက်းဇူးတင္ေၾကာင္းေျပာပါသည္။
စႏိုးေလး is on a distinguished road
vs 2008 နဲ႔ ကိုယ္ပိုင္ control ေလးေတြ ဖန္တီးရေအာင္

visual studio 2008 နဲ႔ ကိုယ္ပုိင္ control ေလးေတြ ဖန္တီးခ်င္ရင္

ပထမဦးဆံုး File ကေန New Project ယူပါ -ၿပီးရင္ Windows Forms Control Library ကိုေရြး -အဲ့ဒီမွာ ပေရာ့ဂ်က္နာမည္ေပးတာ အေရးႀကီးတယ္ေနာ္ အဲ့ဒီေပးတဲ့ နာမည္က ကိုယ့္ရဲ႕ class နာမည္ ျဖစ္သြားမွာမုိ႔ေလ ဥပမာ MgMg က control ကုိ create လုပ္တယ္ ဆုိပါစို႔ ဒါဆို ပေရာ့ဂ်က္နာမည္ကို MgMg လုိ႔ေပးလုိက္ရင္- အဲ့ဒီ control ဟာ ေမာင္ေမာင္ create လုပ္တဲ့ cotrol ျဖစ္သြားပီ-ဘယ္လုိေျပာရမလဲ စႏိုးတုိ႔ေခၚသံုးေနက် System.Windows.Form.ဆုိပီးေလ အဲ့လိုဘဲ သူကလည္း ေမာင္ေမာင္က TextBox တစ္ခု create လုပ္ထားရင္ MgMg.TextBox. ဆိုပီး ေခၚသံုးလို႔ရတယ္ ဟီး စႏိုးေပေရွေနတာနဲ႔ ၾကာေနပီ ကဲ ဒါဆုိရင္ ပေရာဂ်က္တစ္ခုယူပီးသြားပီ ဒါဆို ကုိယ့္စိတ္ကူးေလးထဲကအတုိင္း coding ေရး စႏိုးေရးမျပေတာ့ဝူးေနာ္ coding ေရးပီးရင္ေတာ့ project ကို right click ေထာက္ပီး Build လုပ္ - အဲ့လုိလုပ္လုိက္ရင္ ေအာက္နားမွာ Build Succeed လုိ႔ေပၚလာလိ္မ့္မယ္ ဒါဆို .dll ဖိုင္ ရပီ

အဲ့ဒီ .dll ဖိုင္ကို တျခား project တစ္ခုကေန ေခၚသံုးခ်င္ရင္

project
အသစ္တစ္ခုယူ ပီးရင္ အဲ့ဒီ project ကေန right click ---Add Reference လုပ္ အဲ့ဒီမွာ Browse ကေန ခုက .dll ဖိုင္ကိုထည့္ ဒါက သူ႔ရဲ႕ Reference ထဲဘဲ ထည့္ရေသးတာေနာ္ ေနာက္တစ္ဆင့္က Toolbox ထဲကိုေရာက္ေအာင္ - ToolBox ထဲမွာရွိတဲ့ control တစ္ခုခုကေန right click ---Choose Items ကိုေရြး အဲ့ဒီမွာ Browse ဆုိပီး ခုန .dll ဖိုင္ကိုထည့္

ဒါဆုိရင္ေတာ့ အုိေကသြားပီ - ကုိယ္ဖန္တီးထားတဲ့ cotrol တစ္ခုကို စိတ္ႀကိဳက္ေခၚသံုးႏိုင္ပါပီခ်င့္

စႏိုးလည္း ခုမွ ေလ့လာေနဆဲမုိ႔ပါ လုိအပ္ခ်က္ေတြ အမ်ားႀကီးရွိႏိုင္ပါတယ္ အစကေတာ့ ပံုေလးေတြနဲ႔ ရွင္းျပမလုိ႔ပါ စႏိုးပံုမတင္တတ္လုိ႔ စႏိုးကို ပံုတင္နည္းေလး ေျပာေပးၾကပါအုန္းေနာ္ အားလံုးဘဲ ခင္မင္လွ်က္ စႏိုးေလး

ၾကယ္ေတြစံုေနတဲ့ ဒီလိုေအးခ်မ္းတဲ့ညထဲ တုိ႔တစ္ေယာက္တည္းဘဲ လြမ္းေနရေတာ့မယ္ သူဘယ္အခ်ိန္ျပန္လာမွာလဲ ေမွ်ာ္ကာေစာင့္လု႔ိ ေနသူကြယ္ မင္းေပးခဲ့တဲ့ ရက္စက္ျခင္းမ်ားနဲ႔ လူးလြန္႔လို႔ေနခဲ့
Download

Last edited by စႏိုးေလး; 25-08-2011 at 12:55 PM..
စႏိုးေလး is offline   Reply With Quote
ေအာက္ပါအသင္း၀င္ 8 ဦးတို႔မွ စႏိုးေလး အား ေက်းဇူးတင္စကား ေျပာၾကားသြားပါသည္။
Old 25-08-2011, 07:50 PM
  post #2
ျငိမ္းခ်မ္း
MF Contributor
 
အသင္း၀င္ေန႔စြဲ: May 2009
ေရးသားခ်က္မ်ား: 666
ႏိုင္ငံအလံ: Users Flag!
ေက်းဇူးတင္စကား: 2,764
ပို႔စ္ 556 ခုအတြက္ 3,044 ဦးမွ ေက်းဇူးတင္ေၾကာင္းေျပာပါသည္။
ပံုမ်ား: 6
ျငိမ္းခ်မ္း is on a distinguished road
ျပန္စာ - vs 2008 နဲ႔ ကိုယ္ပိုင္ control ေလးေတြ ဖန္တီးရ)

ပံုတင္နည္းေလးကို ဒီမွာ ၾကည့္လိုက္ေလ... ေနာက္မသိတာေတြကို ဒီမွာ သြားသြားဖတ္ေနာ္... အမ်ားၾကီးပဲ...

.




တစ္ခုခု အကူအညီေတာင္းေတာ့မည္ဆိုလွ်င္ ေမးျမန္းမႈ အတတ္ပညာ ကိုဖတ္ေပးၾကပါ။
ဒို႔ဗမာ ဆိုတဲ့သီခ်င္းေလးကို အရမ္းၾကိဳက္ေနတယ္-----> Download
ျငိမ္းခ်မ္း is offline   Reply With Quote
ေအာက္ပါအသင္း၀င္ 4 ဦးတို႔မွ ျငိမ္းခ်မ္း အား ေက်းဇူးတင္စကား ေျပာၾကားသြားပါသည္။
Old 19-09-2011, 03:37 PM
  post #3
စႏိုးေလး
MF Contributor
 
စႏိုးေလး's Avatar
 
အသင္း၀င္ေန႔စြဲ: Jun 2011
တည္ေနရာ: မန္းေလး
ေရးသားခ်က္မ်ား: 185
ႏိုင္ငံအလံ: Users Flag!
ေက်းဇူးတင္စကား: 2,892
ပို႔စ္ 188 ခုအတြက္ 1,653 ဦးမွ ေက်းဇူးတင္ေၾကာင္းေျပာပါသည္။
စႏိုးေလး is on a distinguished road
ျပန္စာ - vs 2008 နဲ႔ ကိုယ္ပိုင္ control ေလးေတြ ဖန္တီးရ)

စႏုိးတုိ႔ ခု Message Box တစ္ခု ဖန္တီးၾကည့္ရေအာင္ အဲ့လုိဖန္တီးဖို႔အတြက္ဆုိရင္ အရင္ဆံုး vs မွာ ပါတဲ့ Message Box ကိုအရင္ေလ့လာထားဖုိ႔ လိုပါမယ္ အဲ့ဒီမွာ ဘာေတြပါမယ္ ပီးေတာ့ ဘယ္လုိ အလုပ္လုပ္သြားတယ္ဆုိတာက အစ ေလ့လာထားရပါမယ္ ကဲ အဲ့လုိေလ့လာပီးရင္ ကိုယ္က ဘယ္လုိပုိေကာင္းေအာင္ လုပ္မယ္ဆုိတာကို စဥ္းစားၾကည့္ေပါ့ေနာ္

စႏိုးတုိ႔ အရင္ဆံုး class library တစ္ခု ယူလုိက္ပါမယ္ ဘာလုိ႔လည္းဆုိရင္ စႏုိးတုိ႔က dll ဖုိင္ ထုတ္ခ်င္တာကိုး ဒါမွ ကို္ယ္ႀကိဳက္တဲ့ project ကေန လွမ္းေခၚလုိ႔ရမွာေလ
အဲ့ဒီ class project ထဲမွာ Message Box အတြက္ class တစ္ခုပါမယ္ ပီးေတာ့ Message Box အတြက္ design form တစ္ခုပါမယ္ အဲ့ဒီ desing form ထဲမွာေတာ့ Message Box နဲ႔ သက္ဆုိင္မဲ့ properties ေတြေရးထားမွာေပါ့ေနာ္ အားလံုးေရးပီးရင္ေတာ့ class project ကုိ build လုပ္လုိက္ပါ ဒါဆိုရင္ dll ဖုိင္ရပီ

အဲ့ဒီရတဲ့ dll ဖုိင္ကုိ ကုိယ္ေခၚသံုးခ်င္တဲ့ project ကေန Add Reference ကေန လွမ္းထည့္လုိက္ပါ ဒါဆိုရင္ သံုးလုိ႔ရပါပီရွင္

ဒါကေတာ့ Message Box class အတြက္ ေရးထားတဲ့ code ေလးပါ
Code:
using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;

namespace ZinMessageBox
{
    public enum MsgBoxButtonType : byte
    {
        OK,
        OKCancel,
        YesNo,
        YesNoCancel
    }
    public enum MsgBoxIconType : byte
    {
        Empty,
        Information,
        Error,
        Question,
        Warning,
        Stop
    }
    public class ZinZinMessageBox
    {
        public static MessageBoxTemplate msg = new MessageBoxTemplate();

        private static void DefaultValue()
        {
            msg.ButtonType = MsgBoxButtonType.OK;
            msg.IconType = MsgBoxIconType.Empty;
        }
        public static DialogResult Show(string Message)
        {
            DefaultValue();
            msg.Message = Message;
            return msg.ShowDialog();
        }

        public static DialogResult Show(string Message, string Title)
        {
            DefaultValue();
            msg.Message = Message;
            msg.Title = Title;
            return msg.ShowDialog();
        }

        public static DialogResult Show(string Message, string Title, MsgBoxButtonType ButtonType)
        {
            DefaultValue();
            msg.Message = Message;
            msg.Title = Title;
            msg.ButtonType = ButtonType;
            return msg.ShowDialog();
        }

        public static DialogResult Show(string Message, string Title, MsgBoxButtonType ButtonType, MsgBoxIconType IconType)
        {
            msg.Message = Message;
            msg.Title = Title;
            msg.ButtonType = ButtonType;
            msg.IconType = IconType;
            return msg.ShowDialog();
        }
            
    }
}

ဒါကေတာ့ Message Box Form အတြက္ ေရးထားတဲ့ code ေလးပါ
Code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Collections;

namespace ZinMessageBox
{
    public partial class MessageBoxTemplate : Form
    {
        private string _message;
        private string _title;
        private MsgBoxButtonType _buttonType;
        private MsgBoxIconType _iconType;

        public string Message { get { return _message; } set { _message = value; } }
        public string Title { get { return _title; } set { _title = value; } }
        public MsgBoxButtonType ButtonType { get { return _buttonType; } set { _buttonType = value; } }
        public MsgBoxIconType IconType { get { return _iconType; } set { _iconType = value; } }
        
        public MessageBoxTemplate()
        {
            InitializeComponent();
        }

        private void MessageBoxTemplate_Load(object sender, EventArgs e)
        {
            this.Text = Title;
            textBox1.Text = Message;
            ButtonState();
            IconState();
        }

        private void ButtonState()
        {
            if (_buttonType == MsgBoxButtonType .OK)
            {
                button1.Text = "OK";
                button1.Visible = true;
                button2.Visible = false;
                button3.Visible = false;
            }
            else if (_buttonType == MsgBoxButtonType .OKCancel)
            {
                button2.Text = "OK";
                button1.Text = "Cancel";
                button1.Visible = true;
                button2.Visible = true;
                button3.Visible = false;

            }
            else if (_buttonType == MsgBoxButtonType .YesNo)
            {
                button2.Text = "Yes";
                button1.Text = "No";
                button1.Visible = true;
                button2.Visible = true;
                button3.Visible = false;
            }
            else if (_buttonType == MsgBoxButtonType .YesNoCancel)
            {
                button3.Text = "Yes";
                button2.Text = "No";
                button1.Text = "Cancel";
                button1.Visible = true;
                button2.Visible = true;
                button3.Visible = true;

            }

        }
        private void IconState()
        {
            if(_iconType ==MsgBoxIconType .Error)
            {


                pictureBox1.Image = Image.FromFile(Environment.CurrentDirectory + "\\Icon\\Error.png");
            }
            if (_iconType == MsgBoxIconType.Information)
            {
                pictureBox1.Image = Image.FromFile(Environment.CurrentDirectory + "\\Icon\\Info.png");
            }
            if (_iconType == MsgBoxIconType.Question)
            {
                pictureBox1.Image = Image.FromFile(Environment.CurrentDirectory + "\\Icon\\Question.png");
            }
            if (_iconType == MsgBoxIconType.Stop)
            {
                pictureBox1.Image = Image.FromFile(Environment.CurrentDirectory + "\\Icon\\Stop.png");
            }
            if (_iconType == MsgBoxIconType.Warning)
            {
                pictureBox1.Image = Image.FromFile(Environment.CurrentDirectory + "\\Icon\\Warning.png");
            }
        }
        private void button1_Click(object sender, EventArgs e)
        {
            if (button1.Text == "OK")
            {
                this.DialogResult = DialogResult.OK;
            }
            else
            {
                this.DialogResult = DialogResult.Cancel;
            }
        }

        private void button2_Click(object sender, EventArgs e)
        {
            if (button2.Text == "OK")
            {
                this.DialogResult = DialogResult.OK;
            }
            else
            {
                this.DialogResult = DialogResult.No;

            }
        }

        private void button3_Click(object sender, EventArgs e)
        {
            if (button3.Text == "Yes")
            {
                this.DialogResult = DialogResult.Yes;
            }
        }
    }
}

ေနာက္ဆံုးအေနနဲ႔ ဒါကေတာ့ ေခၚသံုးမယ့္ project တစ္ခုမွာ ေရးမယ့္ code ေလးပါ
Code:
private void button1_Click(object sender, EventArgs e)
        {    ZinZinMessageBox.Show("My Name is Zin Zin","Message",MsgBoxButtonType.YesNoCancel ,MsgBoxIconType .Warning);
        }




ဒီလိုေလး run လုိက္မယ္ဆုိရင္ေတာ့ သက္ဆုိင္တဲ့ Message Box ေလးတစ္ခု က်လာပါလိမ့္မယ္ရွင္ အဆင္မေျပတာရွိရင္လည္း စႏိုးကို ေျပာႏိုင္ပါတယ္ရွင္ စႏိုး တတ္သေလာက္ မတ္သေလာက္ ေျပာေပးပါ့မယ္ အားလံုးကို ေစတနာသက္သက္နဲ႔သာ ျဖန္႔ေဝေပးျခင္း ျဖစ္ပါတယ္ရွင္
အဆင္ေျပပါေစေနာ္
ခင္မင္လွ်က္
စႏိုးေလး

ၾကယ္ေတြစံုေနတဲ့ ဒီလိုေအးခ်မ္းတဲ့ညထဲ တုိ႔တစ္ေယာက္တည္းဘဲ လြမ္းေနရေတာ့မယ္ သူဘယ္အခ်ိန္ျပန္လာမွာလဲ ေမွ်ာ္ကာေစာင့္လု႔ိ ေနသူကြယ္ မင္းေပးခဲ့တဲ့ ရက္စက္ျခင္းမ်ားနဲ႔ လူးလြန္႔လို႔ေနခဲ့
Download

Last edited by စႏိုးေလး; 19-09-2011 at 03:39 PM..
စႏိုးေလး is offline   Reply With Quote
ေအာက္ပါအသင္း၀င္ 9 ဦးတို႔မွ စႏိုးေလး အား ေက်းဇူးတင္စကား ေျပာၾကားသြားပါသည္။
Reply

တန္ဆာပလာမ်ား
ေဖာ္ျပမႈပံုစံ

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

ဖိုရမ္ေတြ ေက်ာ္ေရာက္ခ်င္ရင္ !

အျခားဆင္တူေဆြးေႏြးခ်က္မ်ား
ေဆြးေႏြးခ်က္ စတင္ေရးသားသူ ကြပ္ပ်စ္၀ိုင္း ျပန္စာမ်ား ေနာက္ဆံုးပို႔စ္
Gmail အတြက္ အစြမ္းထက္နည္းလမ္း (၈၀) ေမာင္ေအာင္ဟိန္းေအး Chat software မ်ားဆိုင္ရာ 0 12-01-2011 11:57 AM
visual studio 2008 နဲ႔ ကိုယ္ပိုင္ winmedia player ေရးရေအာင္ nwmgmg Software မ်ားဆိုင္ရာ 0 02-07-2010 02:34 AM


ဖိုရမ္၏ ပင္မအခ်ိန္သည္ ဂရင္းနစ္စံေတာ္ခ်ိန္ +6.5 ျဖစ္သည္။ေဒသစံေတာ္ခ်ိန္ 02:24 PM
Inactive Reminders By Icora Web Design