線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1233
推到 Plurk!
推到 Facebook!

ado元件指標問題

缺席
liyanzi
一般會員


發表:51
回覆:45
積分:19
註冊:2005-01-24

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-12-12 17:14:41 IP:59.113.xxx.xxx 未訂閱
請問各位大大,我寫的是關於最短路徑的    當中有一些值是需要連資料庫的    如程式中的 double road_time;            ADOTable1->Open();           road_time=ADOTable1->Fields->Fields[0] ->AsInteger ;    雖然可以執行,但偵錯時數值只要是road_time此值    都會指向資料庫中的第九筆,也就是35    我已經有寫ADOTable1->First();    然後下一筆則是ADOTable1->Next();    但數值都會出來的結果都是以第九筆數值下去計算。    想請問各位大大,我是不是有哪裡寫錯了呢??    
void __fastcall TForm1::FormCreate(TObject *Sender)
{             double road_time;
          ADOTable1->Open();
          road_time=ADOTable1->Fields->Fields[0] ->AsInteger ;                for ( int i = 0; i < 11; i++ )
               {
                delete_road[ i ] = new Save_roadname ;
                head = new DList ;//先將其設為NULL
                find_head = new DList ;                       for ( int i = 0; i < 11; i++ )                     temp_road[ i ] = new DList ;
                    all_num = 0 ;
                    DList *pointer, *temp[10] ;                        for ( int i = 0; i < 11; i++ )                         temp[ i ] = new DList ;                        for ( int i = 0; i < 11; i++ )
                {
                     temp[ i ] = new DList ;            ADOTable1->First();
       head->number   =  1 ;
       head->roadname = "成功路";
       ComboBox1 -> Items -> Add( head -> roadname ) ;
       head -> road = temp[ 0 ] ; // 成功 -> 自由
       head -> road_numeral = 35 ;
       head -> an_road = NULL ; // 無
       head -> an_road_numeral = 0 ;
       head -> speed = ((double)35) /(road_time);
       head -> an_speed= 0;                ADOTable1->Next();
        temp[ 0 ] -> number = 2;
        temp[ 0 ] -> roadname =  "自由路";
        ComboBox1 -> Items -> Add( temp[ 0 ] -> roadname ) ;
        temp[ 0 ] -> road = temp[ 1 ] ;  // 自由 -> 博愛
        temp[ 0 ] -> road_numeral =45 ;
        temp[ 0 ] -> an_road = temp[ 2 ] ;  // 自由 -> 中正
        temp[ 0 ] -> an_road_numeral = 30 ;
       temp[ 0 ] -> speed = ((double)45)/ (road_time);
        temp[ 0 ] -> an_speed = ((double)30) / (road_time);            ADOTable1->Next();
        temp[ 1 ] -> number = 3;
        temp[ 1 ] -> roadname = "博愛路" ;
        ComboBox1 -> Items -> Add( temp[ 1 ] -> roadname ) ;
        temp[ 1 ] -> road = temp[ 3 ] ;  // 博愛 -> 仁愛
        temp[ 1 ] -> road_numeral =25;
        temp[ 1 ] -> an_road = NULL ;  // 無
        temp[ 1 ] -> an_road_numeral = 0 ;
        temp[ 1 ] -> speed =  ((double)25) / (road_time );
        temp[ 1 ] -> an_speed = 0;            ADOTable1->Next();
        temp[ 2 ] -> number = 4;
        temp[ 2 ] -> roadname = "中正路" ;
        ComboBox1 -> Items -> Add( temp[ 2 ] -> roadname ) ;
        temp[ 2 ] -> road = temp[ 3 ];  // 中正 -> 仁愛
        temp[ 2 ] -> road_numeral = 45;
        temp[ 2 ] -> an_road = temp[ 4 ];  // 中正 -> 中山
        temp[ 2 ] -> an_road_numeral = 130 ;
        temp[ 2 ] -> speed =((double)45) /  (road_time);
        temp[ 2 ] -> an_speed = ((double)130) / (road_time);            ADOTable1->Next();
        temp[ 3 ] -> number = 5;
        temp[ 3 ] -> roadname ="仁愛路" ;
        ComboBox1 -> Items -> Add( temp[ 3 ] -> roadname ) ;
        temp[ 3 ] -> road = temp[ 4 ] ;  // 仁愛 -> 中山
        temp[ 3 ] -> road_numeral = 70;
        temp[ 3 ] -> an_road = temp [ 6 ] ;
        temp[ 3 ] -> an_road_numeral = 120;
        temp[ 3 ] -> speed = ((double)70) /  (road_time);
        temp[ 3 ] -> an_speed = ((double)120) / (road_time) ;            ADOTable1->Next();
        temp[ 4 ] -> number = 6;
        temp[ 4 ] -> roadname = "中山路";
        ComboBox1 -> Items -> Add( temp[ 4 ] -> roadname ) ;
        temp[ 4 ] -> road = temp [ 5 ] ;
        temp[ 4 ] -> road_numeral =30;
        temp[ 4 ] -> an_road = temp[ 6 ] ;
        temp[ 4 ] -> an_road_numeral = 90;
        temp[ 4 ] -> speed =  ((double)30) / (road_time);
        temp[ 4 ] -> an_speed = ((double)90) / (road_time ) ;            ADOTable1->Next();
        temp[ 5 ] -> number =7;
        temp[ 5 ] -> roadname = "北門路"  ;
        ComboBox1 -> Items -> Add( temp[ 5 ] -> roadname ) ;
        temp[ 5 ] -> road = temp[ 6 ]  ;
        temp[ 5 ] -> road_numeral =50;
        temp[ 5 ] -> an_road = temp[ 7 ];
        temp[ 5 ] -> an_road_numeral = 80 ;
        temp[ 5 ] -> speed = ((double)50) / (road_time) ;
        temp[ 5 ] -> an_speed = ((double)80) /  (road_time);                ADOTable1->Next();
        temp[ 6 ] -> number = 8;
        temp[ 6 ] -> roadname = "中華路";
        ComboBox1 -> Items -> Add( temp[ 6 ] -> roadname ) ;
        temp[ 6 ] -> road = temp[ 7 ]  ;
        temp[ 6 ] -> road_numeral =80 ;
        temp[ 6 ] -> an_road = NULL;
        temp[ 6 ] -> an_road_numeral = 0;
        temp[ 6 ] -> speed =((double)80) /(road_time);
        temp[ 6 ] -> an_speed= 0 ;            ADOTable1->Next();
        temp[ 7 ] -> number =9;
        temp[ 7 ] -> roadname ="中山南路";
        ComboBox1 -> Items -> Add( temp[ 7 ] -> roadname ) ;
        temp[ 7 ] -> road = temp[ 8 ] ;
        temp[ 7 ] -> road_numeral =95;
        temp[ 7 ] -> an_road = NULL;
        temp[ 7 ] -> an_road_numeral = 0 ;
        temp[ 7 ] -> speed = ((double)95)/(road_time ) ;
        temp[ 7 ] -> an_speed= 0 ;                ADOTable1->Next();
        temp[ 8 ] -> number = 10;
        temp[ 8 ] -> roadname = "安和路" ;
        ComboBox1 -> Items -> Add( temp[ 8 ] -> roadname ) ;
        temp[ 8 ] -> road = NULL ;
        temp[ 8 ] -> road_numeral =0;
        temp[ 8 ] -> an_road = NULL;
        temp[ 8 ] -> an_road_numeral = 0 ;
        temp[ 8 ] -> speed= 0 ;
        temp[ 8 ] -> an_speed= 0 ;
         }
         }
      ADOTable1->Close();
以下資料庫之圖片
系統時間:2024-04-25 8:52:03
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!