close

1. 用程式碼操作控制項:

(1) 建立控制項:

控制項種類名稱 控制項種類名稱 = new 控制項種類名稱();

如:

TextBox t1 = new TextBox();

Button my_button = new Button();

(2) =符號存取控制項,乃是「賦址不賦值」:

在程式碼中用=符號呼叫一已存在的控制項,乃是呼叫控制項的參考而非實體。譬如說表單中有一已存在的TextBox(名為textBox1),有程式碼:

TextBox this_t = textBox1;

this_t.Text = "hi!";

則在執行上述程式碼之後,textBox1的顯示文字會變成hi!

(3) 為控制項建立事件處理函式:

其語法為:

控制項名稱.事件名稱+=new EventHandler(事件處理函式名稱);

也可以使用匿名函式的方法,如:

控制項名稱.事件名稱 += new EventHandler

(       

delegate(object 參數一名稱, EventArgs 參數二名稱)

{

//程式碼內容

}

);

其中,事件處理函式應要有兩個參數,一個為object類別、一個為EventArgs 類別。寫法如下:

回傳型別 事件處理函式名稱(object 參數一名稱, EventArgs 參數二名稱)

{ 程式內容 }

範例如:

public void t1_Click(object sender, EventArgs e)

{

    TextBox this_t = sender as TextBox;  //此處要將object物件轉成控制項

    this_t.Text = "OK!";

}

private void Form1_Load(object sender, EventArgs e)

{

    TextBox t1 = new TextBox();

    this.Controls.Add(t1);    //將此控制項收納入表單(在此,this關鍵字代表表單)

    t1.Click += new EventHandler(t1_Click);  //建立事件處理函式

}

 

 

 

2. 各控制項都有的常用、通用成員:

控制項名稱.Autosize:一個bool。若設為true,表示此控制項會隨著其內的文字長短而自動改變大小,若為false則不會。預設是true

控制項名稱.TabIndex:一個int,其值>=0。使用者在表單上按下<Tab>鍵可以變換所選取的控制項,就是依據這個TabIndex做為順序。假設使用者目前所選取的控制項其TabIndex5,那麼按下<Tab>鍵後就會變換到TabIndex6的那項控制項。若沒有任何控項的TabIndex比當前選取之控制項的TabIndex大,則變換到TabIndex0的控制項。

控制項名稱.BackColor:一個Color物件。表示該控制項的背景顏色。

控制項名稱.ForeColor:一個Color物件。表示該控制項的文字顏色。

控制項名稱.Name:一個string。乃是該控制項的名稱,可用其來做識別。

控制項名稱.Left:一個int。表示該控制項的X座標值。整個座標軸的原點是表單的最左上角,往右為X軸正向,往下為Y軸正向,單位為像素。以控制項的最左上角來代表整個控制項的座標位置。

控制項名稱.Top:一個int。表示該控制項的Y座標值。

控制項名稱.Height:一個int。表示該控制項的高度(以像素為單位)

控制項名稱.Width:一個int。表示該控制項的的寬度(以像素為單位)

控制項名稱.Visible:一個bool。若設為true,表示此控制項會顯示在表單上,若為false則不會。預設是true

控制項名稱.Enabled:一個bool。若設為false,表示使用者無法觸發該控制項的任何事件,且其字體會變成灰色。若設為true則可觸發事件。預設為true

控制項名稱.Cursor:一個Cursors物件。表示當游標移到此控制項上時,游標的圖案。Cursors物件可用以下方法來取得:

Cursors.游標圖案名稱

其中,游標圖案名稱的數量很多,在此不詳述。讀者可以到「屬性面板」按下屬性按鈕 後,至 cursor屬性右方欄位設定要怎樣的游標圖案。

 

 

 

3. 各控制項都有的常用、通用成員函式:

控制項名稱.BringToFront():無回傳值。可將該控制項移至畫面的最前景。

控制項名稱.SendToBack():無回傳值。可將該控制項移至畫面的最後景。

父控制項名稱.Controls.GetChildIndex(子控制項名稱):回傳一個整數,代表該子控制項父控制項中的Z-index。其中,父控制項應要是GroupBoxPanel等容器控制項,而子控制項可以是此容器控制項中的任何控制項。

Z-index低的子控制項若和Z-index高的子控制項」重疊顯示時,「Z-index低的子控制項」會顯示在前景。(此規則與javascript相反。Javascript中,「Z-index高的子控制項」會顯示在前景。)

() 註:C#中,屬於同一個父控制項的子控制項們,其Z-index必兩兩不相同。而若設計者在程式碼中宣告子控制項,則先被父控制項所收納的子控制項,其Z-index越低、越容易在前景。譬如:

TextBox t1 = new TextBox();

TextBox t2 = new TextBox();

panel1.Controls.Add(t1);

panel1.Controls.Add(t2);

此程式碼值型之後,t1控制項會在t2控制項之前。

 

 

上一篇:windows media player

下一篇:字型對話方塊(FontDialog)

按此前往C#完整教學目錄

arrow
arrow
    創作者介紹
    創作者 埃伯 的頭像
    埃伯

    程式語言教學

    埃伯 發表在 痞客邦 留言(0) 人氣()