2012-05-07 193 views
0

我有一個方法可以製作35個標籤的(新)lblArray,但陣列上的標籤需要按下按鈕才能重置。在運行時更改標籤[,]屬性

所以我把同樣的方法在button1_onclick,但當時它只是使前一個下一個新的數組..

難道你們把我在正確的方向嗎?

在此先感謝! 大衛

一些代碼:

public void CreateLableArray() {  
     LblArray = new Label[5, 7]; 
     int xpos = 0; 
     int ypos = 0; 

     for (int x= 0; x< 5; x++) { 
     for (int y= 0; y< 7; y++) { 
      LblArray[x, y] = new Label(); 
      LblArray[x, y].Left = xpos; 
      LblArray[x, y].Top = ypos; 
      LblArray[x, y].Width = 50; 
      LblArray[x, y].Height = 50; 
      LblArray[x, y].Text = String.Empty;   
      LblArray[x, y].Click += lblArray_Click; 
      LblArray[x, y].BackColor = Color.Aqua; 
      LblArray[x, y].BorderStyle = BorderStyle.FixedSingle; 

      pnlPanel.Controls.Add(LblArray[x, y]); 

      xpos += LblArray[x, y].Width; 
     } 
     ypos += LblArray[x, 0].Width; 
     xpos = 0; 
     } 
    }/*CreateLableArray*/ 

private void EmptyLabels() { 
     for (int x = 0; x < 5; x++) { 
     for (int y = 0; y < 7; y++) { 
      LblArray[x, y].BackColor = Color.Aqua; 
     } 
     } 
    } 
+0

好吧,讓我們來想象你到目前爲止做了什麼... – Reniuz

+0

重置是什麼意思?你必須有全新的標籤,或者你可以將文字設置爲空白嗎? – Servy

+0

當你點擊標籤時,它會進行一系列檢查,如果這些檢查是真的,則標籤顏色改變的情況將保持不變。 resetbutton實際上是一種「新遊戲」botton,所以標籤需要更改爲其原始顏色 我試過使用get set和一種新的方法「clearinglabel」,它跑遍所有標籤,但原來的顏色應該回來但這並沒有工作 – David

回答

0

這聽起來像所有你需要更改的標籤是它們的顏色,因此而不是通過所有取出舊的工作,使新的標籤和去如果添加新的標籤,只需更改現有標籤的顏色就會更容易。既然你發現如何將它改變成另一種顏色,我認爲你有能力做到這一點,是的?如果沒有,就像這樣,我們可以幫助您處理相關的代碼片段。

+0

不幸的是我忘了pnlPanel.Controls.Add(LblArray [x,y]); :/ 對不起,懷着你的時間=( – David

+0

@大衛別擔心,這總是讓我們最好的小錯誤。 – Servy