關於TForm1::FormCreate |
尚未結案
|
winds2008
一般會員 發表:1 回覆:7 積分:1 註冊:2008-12-01 發送簡訊給我 |
我個人看了書寫關於猜數字的簡單語法
會有我猜.重來.關閉 三個按鈕 分別有edit和ListBox1 要加入這段語法,就是不知道要如何寫入 void __fastcall TForm1::FormCreate(TObject *Sender) { int s; randomize(); num=random(10); while(1){ s=random(10); for(int i=1;i<=num.Length();i ){ if(IntToStr(s)==num.SubString(i,1)) {s=0; break;} } if(s!=0) num=num IntToStr(s); if(num.Length()==4) break; } ShowMessage(num); } 以下是其他語法 //--------------------------------------------------------------------------- #include #pragma hdrstop #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; String num; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::SpeedButton1Click(TObject *Sender) { int an=0,bn=0; for(int i=1;i<=4;i ){ if(Edit1->Text.SubString(i,1)==num.SubString(i,1)) an ; for(int j=1;j<=4;j ) if(Edit1->Text.SubString(i,1)==num.SubString(j,1)) if(i!=j)bn ; } ListBox1->Items->Add(Edit1->Text " => " IntToStr(an) "A" IntToStr(bn) "B"); if(an==4) { ListBox1->Items->Add("猜對了..."); SpeedButton1->Enabled=false; Edit1->Enabled=false; } Edit1->Text=""; } //--------------------------------------------------------------------------- void __fastcall TForm1::SpeedButton2Click(TObject *Sender) { ListBox1->Clear(); num=""; FormCreate(Sender); SpeedButton1->Enabled=true; Edit1->Enabled=true; Edit1->SetFocus(); } //--------------------------------------------------------------------------- void __fastcall TForm1::SpeedButton3Click(TObject *Sender) { Close(); } //--------------------------------------------------------------------------- void __fastcall TForm1::Edit1Change(TObject *Sender) { for(int i=1;iText.Length();i ) if(Edit1->Text.SubString(Edit1->Text.Length(),1)==Edit1->Text.SubString(i,1)){ Edit1->Text=Edit1->Text.Delete(Edit1->Text.Length(),1); Edit1->SelStart=Edit1->Text.Length(); } //--------------------------------------------------------------------------- 如果未加入void __fastcall TForm1::FormCreate(TObject *Sender)這段語法的話 void __fastcall TForm1::Edit1Change(TObject *Sender) { <====程式會卡在這行 |
taishyang
站務副站長 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
|
winds2008
一般會員 發表:1 回覆:7 積分:1 註冊:2008-12-01 發送簡訊給我 |
===================引 用 taishyang 文 章=================== 你要找什麼元件? FormCreate指的是事件喔 我個人看了書寫關於猜數字的簡單語法 會有我猜.重來.關閉 三個按鈕 分別有edit和ListBox1 要加入這段語法,就是不知道要如何寫入 void __fastcall TForm1::FormCreate(TObject *Sender) { int s; randomize(); num=random(10); while(1){ s=random(10); for(int i=1;i<=num.Length();i ){ if(IntToStr(s)==num.SubString(i,1)) {s=0; break;} } if(s!=0) num=num IntToStr(s); if(num.Length()==4) break; } ShowMessage(num); } 以下是其他語法 //--------------------------------------------------------------------------- #include #pragma hdrstop #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; String num; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::SpeedButton1Click(TObject *Sender) { int an=0,bn=0; for(int i=1;i<=4;i ){ if(Edit1->Text.SubString(i,1)==num.SubString(i,1)) an ; for(int j=1;j<=4;j ) if(Edit1->Text.SubString(i,1)==num.SubString(j,1)) if(i!=j)bn ; } ListBox1->Items->Add(Edit1->Text " => " IntToStr(an) "A" IntToStr(bn) "B"); if(an==4) { ListBox1->Items->Add("猜對了..."); SpeedButton1->Enabled=false; Edit1->Enabled=false; } Edit1->Text=""; } //--------------------------------------------------------------------------- void __fastcall TForm1::SpeedButton2Click(TObject *Sender) { ListBox1->Clear(); num=""; FormCreate(Sender); SpeedButton1->Enabled=true; Edit1->Enabled=true; Edit1->SetFocus(); } //--------------------------------------------------------------------------- void __fastcall TForm1::SpeedButton3Click(TObject *Sender) { Close(); } //--------------------------------------------------------------------------- void __fastcall TForm1::Edit1Change(TObject *Sender) { for(int i=1;i if(Edit1->Text.SubString(Edit1->Text.Length(),1)==Edit1->Text.SubString(i,1)){ Edit1->Text=Edit1->Text.Delete(Edit1->Text.Length(),1); Edit1->SelStart=Edit1->Text.Length(); } //--------------------------------------------------------------------------- 如果未加入void __fastcall TForm1::FormCreate(TObject *Sender)這段語法的話 void __fastcall TForm1::Edit1Change(TObject *Sender) { <====程式會卡在這行 |
taishyang
站務副站長 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
|
winds2008
一般會員 發表:1 回覆:7 積分:1 註冊:2008-12-01 發送簡訊給我 |
===================引 用 taishyang 文 章=================== 你可以在新的回應裡面修正你的問題 但不要在原文中修正,這樣會有文不對題的現象^_^ 你在Form上快按滑鼠兩次,就會跳到FormCreate事件的編輯畫面 或者你可以在Object Inspector中找到事件 快按滑鼠兩次就可以到該事件的程式編寫畫面 嗯!!知道了 可是執行後一直會在這錯誤! void __fastcall TForm1::Edit1Change(TObject *Sender) { |
taishyang
站務副站長 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
|
winds2008
一般會員 發表:1 回覆:7 積分:1 註冊:2008-12-01 發送簡訊給我 |
|
taishyang
站務副站長 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
|
winds2008
一般會員 發表:1 回覆:7 積分:1 註冊:2008-12-01 發送簡訊給我 |
|
taishyang
站務副站長 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
|
winds2008
一般會員 發表:1 回覆:7 積分:1 註冊:2008-12-01 發送簡訊給我 |
|
taishyang
站務副站長 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
|
winds2008
一般會員 發表:1 回覆:7 積分:1 註冊:2008-12-01 發送簡訊給我 |
|
taishyang
站務副站長 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
|
winds2008
一般會員 發表:1 回覆:7 積分:1 註冊:2008-12-01 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |