读书人

问一下这个窗体如何设计

发布时间: 2013-06-26 14:29:32 作者: rapoo

问一下这个窗体怎么设计
如图一:(主窗体,查询数据用)
问一下这个窗体如何设计

点击"条件"后弹出图二

如图二:(条件窗体,为查询提供条件where)
问一下这个窗体如何设计


在条件中设置好要查询的“条件一、条件二”。




设置“条件窗体”中的条件一、条件二后,在“主窗体”中查询所需要数据。


要求就是:
1、在弹出的图二窗体后,不允许对其他窗体进行操作了,直到设置好条件,后点击“确定”或者“取消”才可以操作主窗体。


2、主窗体中需要的查询条件,在条件窗体中提供



PS:我尽我可能说的明白一点,我知道这个问题很基础,但是我百度查了好多都是没用的东西。


请您尽可能的把窗体所需要的事件,还有窗体属性标志清楚,感激不尽!
[解决办法]

引用:
假如“统计条件”窗口叫Form2,那你直接用Form2.ShowModal就行了,然后在点Form2的确认时,将条件保存到主窗口的一个全局变量就可以了,假如主窗口public下有个全局变量叫sQueryCondition: string;

那么Form2的确认按钮事件这么写:

use uMain;//调用主窗口

var
sCondition: string;
begin
...//组合sCondition
...
fmMain.sQueryCondition := sCondition;
ModalResult := mrOK;
end;

主窗口中:

use uConditionSetup;//统计条件设置单元

主窗口“条件”按钮点击事件:

with Form2.Create(self) do
try
if From2.ShowModal = mrOK then
btQuery.Click;//Form2点确定后直接查询按钮,当然也可以不要这行。
finally
Free;
end;


在close前保存到主窗体的变量也是可以,不过麻烦,这样更好一点:

var
x:tx;
qstring:string;
begin
x:=tx.create(owner);
if x.showmodal then
qstring:=x.edit1.text;
x.free;
end;

[解决办法]
给你做个示例,项目源码
http://pan.baidu.com/share/link?shareid=438572&uk=1124482001
[解决办法]
引用:
还有一个问题?主窗体和条件窗体互相引用单元 这样不会出什么问题吧?



    if fmtj.ShowModal=mrok then        //如果统计条件窗体点击“确定”
qrydg1.SQL.Text:='select id,mzh,name,sex,age,adr,phone,remark,yblb,ybh,czy,fzkb,doc_name,doc_result,blfy,doc_zd,fzrq '
+' from INPATIENT_INFO '
+' where '
+' fzrq >'+data1_
+' and fzrq <='+data2_


+' and doc_zd like'
+quotedstr('%'+fmtj.editmc.Text+'%') //有统计条件

else //点击“取消”
qrydg1.SQL.Text:='select id,mzh,name,sex,age,adr,phone,remark,yblb,ybh,czy,fzkb,doc_name,doc_result,blfy,doc_zd,fzrq '
+' from INPATIENT_INFO'
+' where '
+' fzrq >'+data1_
+' and fzrq <='+data2_; //无统计条件




我是这么写的,不知道对不对

这样写没问题,
还有一个问题?主窗体和条件窗体互相引用单元 这样不会出什么问题吧,互相引用不会有问题

读书人网 >.NET

热点推荐