第二十五讲 深入窗体 时时(Online)查询 打印本页  
 

  上一讲,我们介绍了Datawindow的几个取数事件。了解了Datawindow功能是很强大的。我们在这讲将继续介绍Datawindow的其它几个重要事件。
  好了,我们还是先看一个例子。
  [插入video_26]
  新建一个Datawindow
  Data Source选择SQL Select方式,格式选择Grid风格。
  选择Customer表,选择几个字段,以fname字段为时时查询条件。
  定义一个参数:String型的参数为fn。
  选择Where标签页,添加条件语句:
  column中选择“customer.fname”字段;在Operator中选择“like”;在values中单击右键,选择Arguments,出现了一个选择参数的对话框,选择“:fn”。
  调整格式
  打开w_datawindow界面
  添加控件
  加入一个GroupBox控件――“查询条件2”,将原有的GroupBox控件1的Text改为“查询条件1”,加以区别。
  加入一个StaticText控件――“Firstname”
  加入第二个Datawindow控件――“dw_input”。
  加入一个输入条件2的数据窗口。
  新建一个Datawindow。
  选择“External”(外部)数据源,风格选择FreeForm格式。用于定义外部数据源的字段,保存为“d_input”。
  回到w_datawindow界面
  进入编程。
  首先,我们要在W_datawindow的Open事件内写入:
  dw_input.insertrow(0)
  dw_browse.dataobject="d_customer"
  打开dw_input的Script,选择getfocus事件。
  dw_browse.dataobject="d_customer_online"
  dw_browse.settransobject(sqlca)
  打开dw_input的Script,选择editchanged事件。
  string ls_temp
  dw_input.accepttext()
  ls_temp=dw_input.getitemstring(1,1)
  ls_temp=ls_temp+"%"
  int li_count
  li_count=dw_browse.retrieve(ls_temp)
  sle_3.text=trim(string(li_count))
  ls_temp=dw_input.getitemstring(1,”input_str”)
  运行程序。