[問題] bcb動態產生物件後改變物件屬性?
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
BCB6
問題(Question):
我想設計個程式是動態產生數個TImage物件後再用計時器改變圖片的座標
程式碼(Code):(請善用置底文網頁, 記得排版)
我在timer中放入以下程式,並用step來判斷程式執行的階段
switch(step)
{
case 0:
TImage** LEI = new TImage*[4];
for (int i=0 ; i<4 ; ++i){
LEI[i] = new TImage(NULL);
LEI[i]->AutoSize = false;
LEI[i]->Left = 30;
LEI[i]->Top = 0-i*10;
LEI[i]->Height = 90;
LEI[i]->Width = 60;
LEI[i]->Parent=this;
LEI[i]->Picture=Image3->Picture;
LEI[i]->Transparent=true;
}
step=1;
break;
case 1:
for (int i=0 ; i<4 ; ++i){
LEI[i]->Top +=50;
}
break;
default:
break;
}
結果會產生[C++ Error] Unit1.cpp(156): E2126 Case bypasses initialization
of a local variable的訊息,似乎在動態宣告元件後switch就不能用了。我試著把宣告
的那段程式移到Form或是做個button按下去後會產生Image,不過都沒辦法再去更動LEI[i]
->Top,有什麼方法可以解決呢?
小弟初接觸C++還請各位先進不吝指教。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 1.160.219.115
※ 編輯: gino0717 來自: 1.160.219.115 (08/29 02:40)
※ 編輯: gino0717 來自: 1.160.219.115 (08/29 02:40)
※ 編輯: gino0717 來自: 1.160.219.115 (08/29 02:49)
→
08/29 03:20, , 1F
08/29 03:20, 1F
感謝,雖然可以進行到step 的case 2了,但會跑出這個錯誤訊息
http://ppt.cc/-TLq
※ 編輯: gino0717 來自: 1.160.219.115 (08/29 04:04)
→
08/29 04:07, , 2F
08/29 04:07, 2F
→
08/29 17:26, , 3F
08/29 17:26, 3F
→
08/29 17:28, , 4F
08/29 17:28, 4F
可以動了!感謝!
※ 編輯: gino0717 來自: 114.24.78.173 (08/29 20:55)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章