全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1326
推到 Plurk!
推到 Facebook!

access violation

答題得分者是:P.D.
bookworm
中階會員


發表:63
回覆:161
積分:82
註冊:2002-08-03

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-09-09 20:27:04 IP:210.85.xxx.xxx 未訂閱
各位先進: 小弟學寫程式的時候,常常會遇到access violation的錯誤 我把程式碼放在下面 procedure TDataModule1.ADOTable0AfterScroll(DataSet: TDataSet); begin if adotable0.FieldByName('dateout').AsString='' then form3.speedbutton1.visible:=true else form3.SpeedButton1.Visible:=false; form3.DateTimePicker2.visible:=true; end; 我想在adotable0移動資料的時候去判斷有些功能是不是可讓使用者用 如果沒有else以下三行,程式是可以跑,只是speedbutton不會聽話 那為什麼加了else,反而會出現一堆錯誤呢?
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-09-09 21:13:52 IP:210.85.xxx.xxx 未訂閱
引言: 各位先進: 小弟學寫程式的時候,常常會遇到access violation的錯誤 我把程式碼放在下面 procedure TDataModule1.ADOTable0AfterScroll(DataSet: TDataSet); begin if adotable0.FieldByName('dateout').AsString='' then form3.speedbutton1.visible:=true else form3.SpeedButton1.Visible:=false; form3.DateTimePicker2.visible:=true; end; 我想在adotable0移動資料的時候去判斷有些功能是不是可讓使用者用 如果沒有else以下三行,程式是可以跑,只是speedbutton不會聽話 那為什麼加了else,反而會出現一堆錯誤呢?
1.Access Violation 一般是使用到不存在的物件或變數, 因為看你的程式是使用DataMoudle, 不知道你的DataModule 是否掛在自動Create或是要以程式來Create, 可能是你的DataModule沒有被正確的Create出來 2.如果你是要 else 以下兩個都要執行, 請加上紅色部份
   else  begin 
     form3.SpeedButton1.Visible:=false;
     form3.DateTimePicker2.visible:=true;       end;    
andersonhsieh
版主


發表:33
回覆:531
積分:439
註冊:2002-06-10

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-09-09 22:03:44 IP:211.23.xxx.xxx 未訂閱
給你一個關於pascal寫作的好習慣建議,就是不管有幾行敘述最好用BEGIN END包來自己對別人都會很好,如  
 
1.FOR I := 1 TO 10 DO
    BEGIN
     ..........
    END;
2.IF (I=1) THEN
    BEGIN
       ..........
    END
  ELSE IF (I=1) THEN
    BEGIN
       ..........
    END
  ELSE
    BEGIN
       ..........
    END;
3. WHILE NOT QUERY.EOF DO
     BEGIN
       ..........
     END;
以上寫法並不會造成程式碼的負擔,但卻可讓維護的人對程式流程一目了然,不是很好嗎,而且也比較不會有程式邏輯上的錯誤 @@~~飛翔在天際的精靈~~@@
------
@@~~飛翔在天際的精靈~~@@
系統時間:2024-05-05 14:52:26
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!