zoukankan      html  css  js  c++  java
  • Delphi窗体之间互相调用的简单问题

    问题是这样的,我的程序主窗口Form1上面有一个数据连接(ADOCONNECTION1)和ADOQUERY,然后还有一些数据感知组件用于浏览用的,我打算点击From1中的一个“修改数据”按钮,就弹出Form2,在中Form2我打算对其中的某条数据提取出来后进行修改,然后再通知Form1的ADOQUERY刷新数据。

    但是这里有一个问题,From1可以 use Form2,然后使用From2.show;,这个没有问题,但是From2是不能 use From1的,这就导致我在From2中无法使用已有的数据连接(ADOCONNECTION1)和ADOQUERY,而且当我修改完数据后也无法调用ADOQUERY.refresh;。

    当然了,我也完全可以这样:在From2上再放上单独的(ADOCONNECTION1)和ADOQUERY,然后From1把数据那行的GUID送到Form2中,From2据此读出数据并进行修改,这样看起来基本可以解决数据的录入问题,但是我记得专家说过,一个From上面再放1套数据连接是不正确的,起码是不优化的,所以我想问问一般应该如何处理呢?
    再添加一个data module,
    把ADOCONNECTION1和ADOQUERY
    放在其中
    在Form1中写这样的代码:
    Form2 := TForm2.Create(Self);
    try
      Form2.ShowModal;
      ADOQuery1.Refresh;
    finally
      Form2.Free;
    end;
    麻烦
    在Form2 的public 中写上
     property AdoQuery:TadoQuery read FAdoQuery write FAdoQuery;
    Form2 := TForm2.Create(Self);
    try
      Form2.AdoQuery:=AdoQuery1;
     if Form2.ShowModal= mrok then 
      begin 
        ADOQuery1.Refresh;
      end;
    finally
    Form2.Free;
    end;
  • 相关阅读:
    flask-script插件
    狗书(flask基础)
    2018.1.18纪事
    py3.6 + xadmin的自学网站搭建
    使用selenium抓取淘宝的商品信息
    pyquery操作
    requests模块
    python3里的Urllib库
    随便写点
    How many ways?? HDU
  • 原文地址:https://www.cnblogs.com/jijm123/p/10572413.html
Copyright © 2011-2022 走看看