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

Button傳回到資料庫的問題

尚未結案
iva0629
一般會員


發表:28
回覆:14
積分:8
註冊:2003-08-13

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-12-01 17:16:30 IP:210.70.xxx.xxx 未訂閱
有40個Button分別各自代表星期一到五  第一節到第八節 點選Button一下出現上課 再點選一下便取消 且將值傳回到Table3的 Week和 Class欄位 有人是建議用Tag 可是不怎麼了解怎麼用耶 還有沒有比較簡單的方法呢??    
leo2568
中階會員


發表:54
回覆:124
積分:70
註冊:2003-09-21

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-12-01 17:23:10 IP:61.217.xxx.xxx 未訂閱
引言:有40個Button分別各自代表星期一到五 第一節到第八節 點選Button一下出現上課 再點選一下便取消且將值傳回到Table3的 Week和 Class欄位有人是建議用Tag可是不怎麼了解怎麼用耶 還有沒有比較簡單的方法呢??
站內有相關檔案,記得是版主hahalin發表 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=28591
╭╧╮╭╧╮╭╧╮╭╧╮╭╮☆
║聖│║誕│║快│║樂│ ╰☆╮ 
╘∞╛╘∞╛╘∞╛╘∞╛☆╰☆ . 
﹒☆‧☆∴.:☆﹒‧∴ ☆..... 
發表人 - leo2568 於 2003/12/01 17:47:11
hahalin
版主


發表:295
回覆:1698
積分:823
註冊:2002-04-14

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-12-01 17:29:14 IP:61.222.xxx.xxx 未訂閱
感謝捧場 如果有符合您的需求 還希望能不吝指教一起討論討論...
speedup
資深會員


發表:19
回覆:259
積分:280
註冊:2003-07-04

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-12-01 18:59:42 IP:61.224.xxx.xxx 未訂閱
引言: 有40個Button分別各自代表星期一到五 第一節到第八節 點選Button一下出現上課 再點選一下便取消 且將值傳回到Table3的 Week和 Class欄位 有人是建議用Tag 可是不怎麼了解怎麼用耶
Tag是每一個元件都有的屬性為Integer,你可以利用十位數代表Week,個位數代表Class 如 Week1 Class5 用15 , week4 Class3 用43 在OnClick程式碼中就可以藉由Sender傳入的Tag判斷目前是第幾week and class eg.
procedure TForm1.Button1Click(Sender: TObject);
var w,c :integer;
begin
  w := TButton(Sender).Tag  div 10;//求商數可得目前week
  c := TButton(Sender).Tag mod 10;//求10的餘數可得目前class
  if TButton(Sender).Caption = '' then
  begin
    TButton(Sender).Caption := '上課';
    ...
  end else begin
    ....
  end;    end; 
將全部button的OnClick都指到上述事件即可 混心雜欲 棄修身~唉
------
唉~
iva0629
一般會員


發表:28
回覆:14
積分:8
註冊:2003-08-13

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-12-01 20:14:49 IP:210.70.xxx.xxx 未訂閱
嗯嗯 我每個Button也都是這樣設的 星期一第一節11 星期一第二節12 以此類推 可是還是只有第一個Button可以點選會出現上課並增加到Time的資料庫去 再次點選就會出錯了耶 還會出現Table3沒有在編輯或新增模式... 以下是我的程式碼 不曉得問題出在哪 請大家幫我看看吧 P.s. 我的新增資料步驟: 1.先按新增按鈕 填寫年度與上下學期 2.按要上課的鈕 3.確定出現"確定新增此筆資料"的訊息框 努力學習中~~~~ procedure TY.Button1Click(Sender: TObject); var w,c :integer; begin w:= TButton(Sender).Tag div 10; //求商數可得目前week c:= TButton(Sender).Tag mod 10; //求10的餘數可得目前class if TButton(Sender).Caption = '' then begin TButton(Sender).Caption := '上課'; Table3.fieldbyName('week').AsInteger:=w; Table3.fieldbyName('class').AsInteger:=c; Table3.Post; Table3.Close; Table3.Open; end; 發表人 - iva0629 於 2003/12/01 20:16:41 發表人 - iva0629 於 2003/12/01 20:23:47
iva0629
一般會員


發表:28
回覆:14
積分:8
註冊:2003-08-13

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-12-01 22:37:19 IP:210.70.xxx.xxx 未訂閱
麻煩大家幫我看一下 現在要按一下出現上課 再按一下便取消 老師說可以用幾行程式寫在一起就好了 可是我想不出來哩 麻煩大家幫我看看 procedure TY.Button1Click(Sender: TObject); var w,c :integer; begin w:= TButton(Sender).Tag div 10; //求商數可得目前week c:= TButton(Sender).Tag mod 10; //求10的餘數可得目前class if TButton(Sender).Caption = '' then begin TButton(Sender).Caption := '上課'; Table3a.Insert; Table3a.fieldbyName('week').AsInteger:=w; Table3a.fieldbyName('class').AsInteger:=c; end else TButton(Sender).Caption:=' '; Table3a.Post; Table3a.Close; Table3a.Open;
leo2568
中階會員


發表:54
回覆:124
積分:70
註冊:2003-09-21

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-12-02 00:12:50 IP:61.217.xxx.xxx 未訂閱
這是你的time.DB 資料結構 其中week是不是周一,周二....當button點選為真時相同課程加1至class裡嗎? 請說明清楚一點,這樣子本區會員們才能幫你的忙? 發表人 - leo2568 於 2003/12/02 00:41:05
iva0629
一般會員


發表:28
回覆:14
積分:8
註冊:2003-08-13

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-12-02 01:26:55 IP:61.216.xxx.xxx 未訂閱
引言: 這是你的time.DB 資料結構 其中week是不是周一,周二....當button點選為真時相同課程加1至class裡嗎? 請說明清楚一點,這樣子本區會員們才能幫你的忙? 發表人 - leo2568 於 2003/12/02 00:41:05
是的 在新增的時候資料庫會也傳回到CLASS裡面去的 例如 點選了星期一第二節 星期一第三節 的Button 資料庫為 SUB_ID week class AA5104 1 2 AA5104 1 3
speedup
資深會員


發表:19
回覆:259
積分:280
註冊:2003-07-04

發送簡訊給我
#9 引用回覆 回覆 發表時間:2003-12-02 01:27:35 IP:218.168.xxx.xxx 未訂閱
引言: 麻煩大家幫我看一下 現在要按一下出現上課 再按一下便取消 老師說可以用幾行程式寫在一起就好了 學校的功課要自己想喔 ,不然回會學不到東西 ,更嚴種的是k-top人氣超強,搞不好妳學校的老師或助教正在看這個版 可是我想不出來哩 麻煩大家幫我看看 procedure TY.Button1Click(Sender: TObject); var w,c :integer; begin w:= TButton(Sender).Tag div 10; //求商數可得目前week c:= TButton(Sender).Tag mod 10; //求10的餘數可得目前class if TButton(Sender).Caption = '' then begin TButton(Sender).Caption := '上課'; Table3a.Insert; Table3a.fieldbyName('week').AsInteger:=w; Table3a.fieldbyName('class').AsInteger:=c; //add this Table3a.post; end else TButton(Sender).Caption:=''; //??以下假設妳的table3a 為 Detail table或下了filter設定 if Table3a.locate('week;class',VarArrayof([w,c]),[]) then Table3a.Delete; end;
混心雜欲 棄修身~唉
------
唉~
iva0629
一般會員


發表:28
回覆:14
積分:8
註冊:2003-08-13

發送簡訊給我
#10 引用回覆 回覆 發表時間:2003-12-02 01:38:08 IP:61.216.xxx.xxx 未訂閱
引言:
引言: 麻煩大家幫我看一下 現在要按一下出現上課 再按一下便取消 老師說可以用幾行程式寫在一起就好了 學校的功課要自己想喔 ,不然回會學不到東西 ,更嚴種的是k-top人氣超強,搞不好妳學校的老師或助教正在看這個版 可是我想不出來哩 麻煩大家幫我看看 procedure TY.Button1Click(Sender: TObject); var w,c :integer; begin w:= TButton(Sender).Tag div 10; //求商數可得目前week c:= TButton(Sender).Tag mod 10; //求10的餘數可得目前class if TButton(Sender).Caption = '' then begin TButton(Sender).Caption := '上課'; Table3a.Insert; Table3a.fieldbyName('week').AsInteger:=w; Table3a.fieldbyName('class').AsInteger:=c; //add this Table3a.post; end else TButton(Sender).Caption:=''; //??以下假設妳的table3a 為 Detail table或下了filter設定 if Table3a.locate('week;class',VarArrayof([w,c]),[]) then Table3a.Delete; end;
混心雜欲 棄修身~唉
多謝你的關心 卡在這個問題已經許久了 今天還在學校做到十一點才回家 我馬上來試看看
ko
資深會員


發表:28
回覆:785
積分:444
註冊:2002-08-14

發送簡訊給我
#11 引用回覆 回覆 發表時間:2003-12-02 09:44:40 IP:61.221.xxx.xxx 未訂閱
iva0629 你好: 小弟有個建議,既然Button都拉好了就直接用Button.name來命名 ex: Button1.NAME:='11'; Button2.NAME:='12'; ... .. . 那只要抓到按下的按鍵名稱就可以了,W:=copy(Button1.NAME,1,1);C:=copy(Button1.NAME,2,1);
------
======================
昏睡~
不昏睡~
不由昏睡~
hahalin
版主


發表:295
回覆:1698
積分:823
註冊:2002-04-14

發送簡訊給我
#12 引用回覆 回覆 發表時間:2003-12-03 15:14:27 IP:61.222.xxx.xxx 未訂閱
ㄟ..ㄟ..ㄟ 從頭到尾我都沒幫到忙 怎麼會是我得分呢?
iva0629
一般會員


發表:28
回覆:14
積分:8
註冊:2003-08-13

發送簡訊給我
#13 引用回覆 回覆 發表時間:2003-12-07 21:12:12 IP:61.225.xxx.xxx 未訂閱
因為hahalin你之前做的東西對我的幫助很大 雖然是leo2568大大PO的 可是又沒有辦法給多人得分... 令我真的很難抉擇 不過 在此特地謝謝各位大大幫我解題唷 YA~~~ 你們是最棒的 我也會繼續努力學習Delphi的 大家一起加油囉
leo2568
中階會員


發表:54
回覆:124
積分:70
註冊:2003-09-21

發送簡訊給我
#14 引用回覆 回覆 發表時間:2003-12-07 22:27:35 IP:61.217.xxx.xxx 未訂閱
引言:因為hahalin你之前做的東西對我的幫助很大 雖然是leo2568大大PO的 可是又沒有辦法給多人得分... 令我真的很難抉擇 不過 在此特地謝謝各位大大幫我解題唷 YA~~~ 你們是最棒的 我也會繼續努力學習Delphi的 大家一起加油囉
最重要的是你真的能在這裡學到東西並與他人分享,這是Delphi K.Top討論區的希望的目的,不是嗎?每個人來這裡參與討論的目的不盡然都是一樣的呀!< >希望你學習愉快< > ╭╧╮╭╧╮╭╧╮╭╧╮╭╮│║│║│║ ╘∞╛╘∞╛╘∞╛╘∞╛ . ﹒﹒‧∴ ☆..... 發表人 - leo2568 於 2003/12/07 22:30:29
系統時間:2024-06-26 23:25:57
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!