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

TABLE问题

尚未結案
zhouying
一般會員


發表:7
回覆:4
積分:2
註冊:2004-12-07

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-12-07 08:44:08 IP:210.22.xxx.xxx 未訂閱
我作数据库用了2个FORM控件,其中一个是用于显示数据,另一个编辑(上面有DBEDIT,另两个窗体上都有TABLE,DATAGRID等控件.已经用了USE FORM2),但为什么在FORM2上的BUTTON控件上设置:FORM1.TABLE1.APPEND,不能添加记录?没有用?忘答复.谢
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-12-07 08:55:57 IP:202.62.xxx.xxx 未訂閱
您好﹗    請上貼相關程式碼﹐以便于判斷錯誤之處﹒    ========================= 我是您的朋友﹐有您真好﹗ =========================
------
忻晟
zhouying
一般會員


發表:7
回覆:4
積分:2
註冊:2004-12-07

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-12-07 12:01:48 IP:210.22.xxx.xxx 未訂閱
unit Unit1;    interface    uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, Grids, DBGrids, DBTables, StdCtrls;    type
  TForm1 = class(TForm)
    Button1: TButton;
    Table1: TTable;
    DBGrid1: TDBGrid;
    DataSource1: TDataSource;
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;    var
  Form1: TForm1;    implementation    uses Unit2;    {$R *.dfm}    procedure TForm1.Button1Click(Sender: TObject);
begin
  form2.show;
end;    unit Unit2;    interface    uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;    type
  TForm2 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;    var
  Form2: TForm2;    implementation    uses Unit1;    {$R *.dfm}    procedure TForm2.Button1Click(Sender: TObject);
begin
  form1.table1.append;
end;    end.
發表人 - cashxin2002 於 2004/12/07 12:08:27
hahalin
版主


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

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-12-07 12:03:48 IP:218.174.xxx.xxx 未訂閱
記得要縮排 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=7326    
procedure TForm2.Button1Click(Sender: TObject);
begin
  form1.table1.open;
  form1.table1.append;
end;    end.
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-12-07 12:16:43 IP:202.62.xxx.xxx 未訂閱
您好﹗    Table元件的Append命令的作用是將Table資料集元件處于新增插入的狀態﹐以供 使用者輸入新的資料﹐其真正存入的命令是Post﹒您的兩個Form中使用的Table都是針對同一個資料表嗎﹖如果是同一個資料表的話﹐在Form2的Table進行任何資料異動后﹐Form1的Table皆不會出現最新的資料﹐解決的方法是將Form1的Table先Close﹐再做Open﹐以取得后端資料庫中最近的資料﹒    ========================= 我是您的朋友﹐有您真好﹗ =========================
------
忻晟
zhouying
一般會員


發表:7
回覆:4
積分:2
註冊:2004-12-07

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-12-07 14:59:15 IP:210.22.xxx.xxx 未訂閱
还是不行, 我在FORM2中的BUTTON用了 FORM1.TABLE1.CLOSE; FORM1.TABLE1.OPEN; FORM1.TABLE1.APEND; 后,在FORM2上的DBTEXT怎么都不能输入数据了? 好像都被只读了?但是我看属性好像没有,我的FORM1,FORM2上用的是同一个表格,都设了一个TABLE, DATASOURCE1. DBTEXT设置在FORM2上. 望答复,急,谢谢!
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-12-07 15:22:34 IP:202.62.xxx.xxx 未訂閱
您好﹗    您在Form2上的DBEdit等資料感知元件是連接上哪個Table﹐如果是連接上Form2上的Table﹐那對Form1中的Table下Append的指令是沒有用的﹒我有些不太理解您的考量﹖    ========================= 我是您的朋友﹐有您真好﹗ =========================
------
忻晟
zhouying
一般會員


發表:7
回覆:4
積分:2
註冊:2004-12-07

發送簡訊給我
#8 引用回覆 回覆 發表時間:2004-12-08 07:47:35 IP:61.169.xxx.xxx 未訂閱
请看相应的结图,我是用2个FORM,其中一个FORM有DBGRID1的用于显示数据,另一个FORM上用于添加,修改数据,是同一个数据表。是不过再FORM2上的更新过程要显示再FORM1上的DBGRID上。
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#9 引用回覆 回覆 發表時間:2004-12-08 08:59:35 IP:202.62.xxx.xxx 未訂閱
您好﹗    請問相應的結圖在何處﹖ 因為您是在兩個 class="code">begin Form1.Table1.DisableControls; Form1.Table1.Close; Form1.Table1.Open; Form1.Table1.EnableControls; end; ========================= 我是您的朋友﹐有您真好﹗ =========================
------
忻晟
peterpcc
一般會員


發表:6
回覆:37
積分:13
註冊:2004-09-27

發送簡訊給我
#10 引用回覆 回覆 發表時間:2004-12-08 09:00:15 IP:221.239.xxx.xxx 未訂閱
FORM2 是要做輸入,然後在FORM1顯示要出現,是這樣的說法嗎? 如果這樣就簡單了. FORM2管自己的新增,最後POST時,再把 FORM1.CLOSE FORM1.OPEN
peterpcc
一般會員


發表:6
回覆:37
積分:13
註冊:2004-09-27

發送簡訊給我
#11 引用回覆 回覆 發表時間:2004-12-08 09:08:04 IP:221.239.xxx.xxx 未訂閱
如果是單純的編輯& 查詢同一資料庫 我的習慣作法是設一個PageControl,然後一個page是顯示區,一個page是新增修改區 當修改完存檔後,顯示區的DBGRID也會同步跟新了.
zhouying
一般會員


發表:7
回覆:4
積分:2
註冊:2004-12-07

發送簡訊給我
#12 引用回覆 回覆 發表時間:2004-12-09 12:44:28 IP:210.22.xxx.xxx 未訂閱
还是不行,我是不是要在2个FORM上都加上DBGRID1,TABLE1?还是只要一个就可以了?
peterpcc
一般會員


發表:6
回覆:37
積分:13
註冊:2004-09-27

發送簡訊給我
#13 引用回覆 回覆 發表時間:2004-12-09 13:15:23 IP:221.239.xxx.xxx 未訂閱
>>是不过再FORM2上的更新过程要显示再FORM1上的DBGRID上。 這樣的話,可以把table放到Data Module內去 Form2新增table後,table.close 再table.open後,Form1內的資料就能更新了.
系統時間:2024-06-29 5:42:50
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!