不好意思,為什麼只run一行資料。 |
|
y2464372001
一般會員 發表:6 回覆:7 積分:2 註冊:2007-01-23 發送簡訊給我 |
s := Form4.ADOTable3.Fields[1].AsString;
Form4.ADOTable3.First; while not Form4.ADOTable3.Eof do begin for i:= 1 to Form4.ADOTable3.RecordCount do begin for j:= 1 to 6 do begin if s = '每日' then begin StringGrid6.Cells[j,i] := Form4.ADOTable3.Fields[j].AsString; end; end; n := Form4.ADOTable3.Fields[0].AsString; Form4.ADOTable1.First; while not Form4.ADOTable1.Eof do begin if Form4.ADOTable1.Fields[0].AsString = n then begin StringGrid6.Cells[0,i] := Form4.ADOTable1.Fields[1].AsString; end; Form4.ADOTable1.Next; end; Form4.ADOTable3.Next; end; end; | |||||||||||||||||||||||
pedro
尊榮會員 發表:152 回覆:1187 積分:892 註冊:2002-06-12 發送簡訊給我 |
||||||||||||||||||||||||
y2464372001
一般會員 發表:6 回覆:7 積分:2 註冊:2007-01-23 發送簡訊給我 |
||||||||||||||||||||||||
pedro
尊榮會員 發表:152 回覆:1187 積分:892 註冊:2002-06-12 發送簡訊給我 |
重點是您ADOTable的Cursor是否有移?
Form4.ADOTable3.First; while not Form4.ADOTable3.Eof do begin for i:= 1 to Form4.ADOTable3.RecordCount do begin s := Form4.ADOTable3.Fields[1].AsString; for j:= 1 to 6 do begin if s = '每日' then begin StringGrid6.Cells[j,i] := Form4.ADOTable3.Fields[j].AsString; end; end; if not Form4.AdOTable3.Eof then Form4.AdOTable3.Next ...... |
|||||||||||||||||||||||
y2464372001
一般會員 發表:6 回覆:7 積分:2 註冊:2007-01-23 發送簡訊給我 |
||||||||||||||||||||||||
y2464372001
一般會員 發表:6 回覆:7 積分:2 註冊:2007-01-23 發送簡訊給我 |
case sRadioGroup1.ItemIndex of
0:begin Form4.ADOTable3.First; while not Form4.ADOTable3.Eof do begin for i:= 1 to Form4.ADOTable3.RecordCount do begin s := Form4.ADOTable3.Fields[1].AsString; for j:= 1 to 6 do begin if s = '每日' then begin StringGrid6.Cells[j,i] := Form4.ADOTable3.Fields[j].AsString; n := Form4.ADOTable3.Fields[0].AsString; Form4.ADOTable1.First; while not Form4.ADOTable1.Eof do begin if Form4.ADOTable1.Fields[0].AsString = n then begin StringGrid6.Cells[0,i] := Form4.ADOTable1.Fields[1].AsString; end; Form4.ADOTable1.Next; end; end; end; if not Form4.ADOTable3.Eof then Form4.ADOTable3.Next; end; end; StringGrid6.RowCount := i; end; 我加入這一行的時後是可以了,可是他執行完後變成
|
|||||||||||||||||||||||
pedro
尊榮會員 發表:152 回覆:1187 積分:892 註冊:2002-06-12 發送簡訊給我 |
不太懂您ADOTable3及ADOTable1的意思,而且手上沒有你的環境,不過,依您的程式碼,改成這樣,您得多定義一個x及match變數,做換行動作
ps:請您標題改成比較具有明確意思的標題,闡述內容或程式碼能儘量詳細一點 type TForm4 = class(TForm) ADOTable3: TClientDataSet; ADOTable3Field: TStringField; ADOTable3Field2: TStringField; ADOTable3Field3: TStringField; ADOTable3Field4: TStringField; ADOTable3Field5: TStringField; ADOTable3Field6: TStringField; ADOTable3Field7: TStringField; DataSource1: TDataSource; DBGrid1: TDBGrid; Button1: TButton; StringGrid6: TStringGrid; procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form4: TForm4; implementation {$R *.dfm} procedure TForm4.FormCreate(Sender: TObject); begin ADOTable3.Close; AdOTable3.CreateDataSet; AdOTable3.Append; ADOTable3.FieldByName('歌曲清單').AsString:='1'; ADOTable3.FieldByName('週期選項').AsString:='每日'; ADOTable3.FieldByName('區域').AsString:=' '; ADOTable3.FieldByName('日期').AsString:=' '; ADOTable3.FieldByName('開始時間').AsString:='01:00'; ADOTable3.FieldByName('結束時間').AsString:='01:30'; ADOTable3.FieldByName('優先順序').AsString:='低'; AdOTable3.Append; ADOTable3.FieldByName('歌曲清單').AsString:='2'; ADOTable3.FieldByName('週期選項').AsString:='每週'; ADOTable3.FieldByName('區域').AsString:=' '; ADOTable3.FieldByName('日期').AsString:='" 星期一"'; ADOTable3.FieldByName('開始時間').AsString:='01:00'; ADOTable3.FieldByName('結束時間').AsString:='01:30'; ADOTable3.FieldByName('優先順序').AsString:='低'; AdOTable3.Append; ADOTable3.FieldByName('歌曲清單').AsString:='2'; ADOTable3.FieldByName('週期選項').AsString:='每年'; ADOTable3.FieldByName('區域').AsString:=' '; ADOTable3.FieldByName('日期').AsString:=''; ADOTable3.FieldByName('開始時間').AsString:='01:00'; ADOTable3.FieldByName('結束時間').AsString:='01:30'; ADOTable3.FieldByName('優先順序').AsString:='低'; AdOTable3.Append; ADOTable3.FieldByName('歌曲清單').AsString:='2'; ADOTable3.FieldByName('週期選項').AsString:='每日'; ADOTable3.FieldByName('區域').AsString:=' '; ADOTable3.FieldByName('日期').AsString:=''; ADOTable3.FieldByName('開始時間').AsString:='01:00'; ADOTable3.FieldByName('結束時間').AsString:='01:30'; ADOTable3.FieldByName('優先順序').AsString:='低'; end; procedure TForm4.Button1Click(Sender: TObject); var i,j,x:Integer; s,n:string; Match:boolean; begin Form4.ADOTable3.First; x:=1; while not Form4.ADOTable3.Eof do begin for i:= 1 to Form4.ADOTable3.RecordCount do begin s := Form4.ADOTable3.Fields[1].AsString; Match:=False; for j:= 1 to 6 do begin if s = '每日' then begin StringGrid6.Cells[j,x] := Form4.ADOTable3.Fields[j].AsString; n := Form4.ADOTable3.Fields[0].AsString; Match:=True; { Form4.ADOTable1.First; while not Form4.ADOTable1.Eof do begin if Form4.ADOTable1.Fields[0].AsString = n then begin StringGrid6.Cells[0,i] := Form4.ADOTable1.Fields[1].AsString; end; Form4.ADOTable1.Next; end;} end; end; if Match then Inc(x); if not Form4.ADOTable3.Eof then Form4.ADOTable3.Next; end; end; StringGrid6.RowCount := i; end; |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |