【BCB】使用 RichEdit 造成程式在結束時產生 "Access Violation" 的問題 |
答題得分者是:gemi0305
|
yserics
一般會員 發表:10 回覆:9 積分:3 註冊:2003-08-12 發送簡訊給我 |
各位先進:
我有兩個問題 (使用Win2K BCB5&BCB6兩版本均試過):
1. 我以如下順序產生一支簡單的程式:
(1)新增一application,在Form1上放入一Button (Button1)
(2)新增另一Form (Form2),在其上放入一RichEdit (RichEdit1)
(3)當按下 Button1 時會叫出 Form2,以下是Button1Click執行的程式碼:
Form2 = new TForm2(NULL);
Form2->ShowModal();
程式執行後,按下 Button1 進入 Form2 ,當關閉 Form2 回到 Form1,再關閉 Form1 結束程式時,就會產生 "Access Violation ..." 的訊息…
我在 BCB5 & BCB6 均試過,都會產生一樣的問題,不知道有沒有人可以幫忙看一下… 2. 我之所以使用 RichEdit 的原因,是因為我想要寫個簡單的英打練習,也就是在 RichEdit 上放入一篇英文文章,以黑色顯示,當照著文章打字時,如果打對的話就將打對的字變成綠色,如果打錯的話,那打錯的字母就會變成紅色…由於先前沒使用過這個元件,所以還在try到底如何用…不知道有沒有人寫過類似的功能,可不可以分享一下心得? 謝謝各位先進…
|
gemi0305
版主 發表:81 回覆:564 積分:629 註冊:2003-05-11 發送簡訊給我 |
|
yserics
一般會員 發表:10 回覆:9 積分:3 註冊:2003-08-12 發送簡訊給我 |
引言: 因為Form2是你new出來的,new出來的東西在程式結束的時候, 都要deletevoid __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action) { delete Form2; } 試試看國泰平安 >>< face="Verdana, Arial, Helvetica"> 謝謝您…但我試過使用 delete Form2; 結果在關閉 Form2 時就會先產生 "Access Violation..."的訊息,另外,我試過 Form2->Close(); 在關閉 Form1 時也產生一樣的問題… 再麻煩您看看… 謝謝… |
gemi0305
版主 發表:81 回覆:564 積分:629 註冊:2003-05-11 發送簡訊給我 |
|
gemi0305
版主 發表:81 回覆:564 積分:629 註冊:2003-05-11 發送簡訊給我 |
|
yserics
一般會員 發表:10 回覆:9 積分:3 註冊:2003-08-12 發送簡訊給我 |
引言: 剛剛那個問題,如果你的form不是動態產生的話, 就不用new了,可以直接Form2->ShowModal() 不然好像多此一舉,最後還要delete, 只要有include Form2的h檔就可以直接和Form2傳資料。 至於你說的英打練習,是個滿不錯的點子, 希望日後你寫出來,如果沒有商業利益關係話, 也請你能和本站其他程式愛好者分享哦~ > 國泰平安 發表人 - >>< face="Verdana, Arial, Helvetica"> 真是謝謝 Gemi,我將"Form2 = new TForm2(NULL);"這行去掉就可以了… 對於 RichEdit 的操作方式,我也是從此版得知它的一些用法,只是還覺得不是很順手,我會再多玩一下… 我要做的打字練習著重在一個字母一個字母的比對,所以以字或以sentence為單位都不是很適合…目前可能先以拼湊的方式來達到我要的功能吧… 謝謝囉! YS. |
gemi0305
版主 發表:81 回覆:564 積分:629 註冊:2003-05-11 發送簡訊給我 |
|
yserics
一般會員 發表:10 回覆:9 積分:3 註冊:2003-08-12 發送簡訊給我 |
引言:
如果著重一個字一個字比對的話,可能會一個字錯,
後面全錯耶,
我以前也玩過一些英打練習的軟體,
好像都是以「行」為基準,再加上「單字」來做比對,
最後再加上一個英文字一個英文字來顯示錯在什麼地方, 小弟個人的想法,參考一下~ 國泰平安
>>< face="Verdana, Arial, Helvetica"> 我剛剛寫了如下的程式可符合我的需求:
//RichEdit設為ReadOnly
//nowPos:現在打字的位置
//str:RichEdit中目前選取的字串,其內容應為一字元
//normalColor, rightColor, errorColor:三種不同狀態的TColor
//len:RichEdit中供練習的所有內容之長度 |
yserics
一般會員 發表:10 回覆:9 積分:3 註冊:2003-08-12 發送簡訊給我 |
|
gemi0305
版主 發表:81 回覆:564 積分:629 註冊:2003-05-11 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |