[問題]如何在抓到資料後,使按鈕消失? |
尚未結案
|
b7307024
一般會員 發表:9 回覆:21 積分:6 註冊:2005-07-31 發送簡訊給我 |
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
您好﹗ 您的思路已經是正确了﹐範例如下﹕
begin ADOQuery1.Close; ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add('Select * From assets Where '); ADOQuery1.SQL.Add('asset_id='''+Edit1.Text+''' and '); ADOQuery1.SQL.Add('Status=''未歸還''); ADOQuery1.Open; if Not (ADOQuery1.IsEmpty) then begin Button1.Visible := False; end; end;================================= 有空來瞅瞅我﹗因為我是您的朋友﹐有您真好﹗ ================================ 發表人 - cashxin2002 於 2005/10/24 16:52:24
------
忻晟 |
b7307024
一般會員 發表:9 回覆:21 積分:6 註冊:2005-07-31 發送簡訊給我 |
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
您好﹗ 當然可以寫在一起﹐分開寫比較容易觀察﹐不然就是長長的一堆嘍﹒另外還有一種寫法就是SQL.Text﹐如下﹕
begin ADOQuery1.Close; ADOQuery1.SQL.Text := 'Select * From assets Where ' + 'asset_id='''+Edit1.Text+''' and Status=''未歸還'''; ADOQuery1.Open; if Not (ADOQuery1.IsEmpty) then begin Button1.Visible := False; end; end;================================= 有空來瞅瞅我﹗因為我是您的朋友﹐有您真好﹗ ================================
------
忻晟 |
b7307024
一般會員 發表:9 回覆:21 積分:6 註冊:2005-07-31 發送簡訊給我 |
再次謝謝cashxin2002版大的回覆,小弟大致上已經把問題解決了,我現在有個問題,是我要在查詢的按鈕(Button2)做判斷說資產編號輸入是否正確,而我是有做出來可是卻反而使其他原本正常的功能,卻不正常了,以下是我原本可以正常執行,而沒有加入判斷編號是否輸入正確的程式碼:
procedure TForm1.Button2Click(Sender: TObject);
begin
MyQuery1.SQL.Text:='Select * From assets Where asset_id=''' Edit1.Text ''' and status=''未歸還''';
MyQuery1.Execute;
If MyQuery1.RecordCount=1 Then
begin
MyQuery1.Close;
Edit1.Clear;
Showmessage('該資產已預借或借出,借出失敗');
MyQuery1.SQL.Clear;
Edit1.SetFocus;
end
Else
begin
MyQuery1.SQL.Text:='Select * From assets Where asset_id=''' Edit1.Text '''';
MyQuery1.Execute;
Edit1.Clear;
Edit1.SetFocus;
end
end; procedure TForm1.Button1Click(Sender: TObject);
begin
MyQuery1.SQL.Text:='Update assets SET status=''未歸還'' WHERE asset_id=''' Edit1.Text '''';
MyQuery1.Execute;
If MyQuery1.RowsAffected <> -1 Then
begin
Edit1.Clear;
Showmessage('借出成功');
Edit1.SetFocus;
end
end; 以下是我想要加入查詢按鈕(Button2)做判斷的程式碼:(註:我是加在第一行)
MyQuery1.SQL.Text:='Select * From assets Where asset_id=''' Edit1.Text '''';
MyQuery1.Execute;
If MyQuery1.RecordCount=0 Then
begin
MyQuery1.Close;
Showmessage('編號輸入失敗,請重新輸入!');
MyQuery1.SQL.Clear;
Edit1.SetFocus;
end;
原本執行的還蠻快的,我改成這樣後,卻變的有點慢,且借出的功能卻無法正常使用了,不知為什麼!請cashxin2002版大再幫小第一次忙吧!謝謝!
|
b7307024
一般會員 發表:9 回覆:21 積分:6 註冊:2005-07-31 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |