• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

在PB中如何实现数据模糊查询(四)

发布: 2008-2-22 16:10 | 作者: 张爱生  | 来源: tech.ddvip.com | 查看: 48次 | 进入软件测试论坛讨论

领测软件测试网 5. StaticText: st_1属性:

    X = 46 Y = 32 Width = 466 Height = 64
    TabOrder = 0 Visible = true Text = "请输入查询条件: " TextColor = 0
    BackColor = 80269524 Alignment = left! FillPattern = solid!

    6. CommandButton: cb_exit属性:

    X = 2578 Y = 376 Width = 256 Height = 108
    TabOrder = 30 Visible = true Enabled = true Text = "&F.返回"
    Cancel = true

    6.1 CommandButton: cb_exit的 clicked 事件:

    功能:直接退出。

    Close(parent)

    7. CommandButton: cb_exec属性:

    X = 2578 Y = 204 Width = 256 Height = 108
    TabOrder = 20 Visible = true Enabled = true Text = "&Z.执行"
    Default = true

    7.1 CommandButton: cb_exec的 clicked 事件:

    功能:设置组和sql语法。

    注释:(1).n_cst_sql、n_cst_sqlattrib为PFC中用户对象,这里不再详述。

    8. DataWindow: dw_column属性:

    X = 2578 Y = 536 Width = 69 Height = 60
    TabOrder = 10 Visible = true Enabled = true DataObject = "d_column_set"
    Border = true LiveScroll = true BorderStyle = stylebox

    9. DataWindow: dw_where属性:

    X = 46 Y = 120 Width = 2459 Height = 448
    TabOrder = 40 Visible = true Enabled = true DataObject = "d_where"
    VScrollBar = true Border = true BorderStyle = stylelowered!

    9.1 DataWindow: dw_where的 editchanged 事件:

    功能:设置"执行"按钮是否有效。


    9.2 DataWindow: dw_where的itemchanged 事件:

    功能:见代码中的注释。

    string colname,colvalue, logvalue
    long currow
    ib_changed = true
    cb_exec.Enabled = True
    currow = GetRow()
    If MaxEditRow < Currow Then MaxEditRow = currow
    // MaxEditRow 为当前已编辑过的最大行的行号。实例变量。
    colname = GetColumnName()
    colvalue = GetItemString(currow,colname)
    Choose Case dwo.name
    Case 'dispvalue'
    Object.value[row] = data
    Case Else
    End Choose
    //设置当前行的operator的初始值为"="
    //设置上一行的logical的初始值为"and"
    if colname = "column1" then
    if colvalue = "" or isnull(colvalue) then
    SetItem(currow,"operator","=")
    if currow >= 2 then
    colvalue = GetItemString(currow - 1,colname)
    logvalue = GetItemString(currow - 1,"logical")
    if colvalue <> "" and (logvalue = "" or isnull(logvalue)) then
    SetItem(currow - 1,"logical","and")
    end if
    end if
    end if
    end if
    //检查并设置左括号。
    long ll, i
    colvalue = GetText()
    if colname = "precol" then
    if colvalue <> "" and not isnull(colvalue) then
    ll = len(colvalue)
    colvalue = ""
    For i = 1 to ll
    colvalue += "("
    Next
    SetItem(currow,"precol",colvalue)
    this.Settext(colvalue)
    Return 2
    end if
    end if

    9.3 DataWindow: dw_where的losefocus 事件:

    AcceptText()

    9.4 DataWindow: dw_where的rbuttondown 事件:

    功能:设置弹出式菜单。

    注释:

    (1) m_cpq_rbutton_paste菜单的属性和代码如下:

    1.MenuItem = m_1 "a1"
    Visible = true Enabled = true
    2.MenuItems for m_1
    MenuItem = m_value "&V.取现有值"
    Visible = true Enabled = true
    3.Script for: nt clicked event
    long ll_pos
    String sSyntax,ls_parm,ls_data,ls_disp
    datawindow dwp
    dwp = Message.PowerObjectParm
    sSyntax = Message.StringParm
    if sSyntax = "" or isNull(sSyntax) then
    beep(3)
    return
    end if
    OpenWithParm(w_paste,sSyntax) //w_paste为响应式窗口
    ls_parm = Message.StringParm
    if ls_parm <> "cancel" then
    ll_pos = Pos ( ls_parm,'/')
    If ll_pos = 0 Then
    ls_data = ls_parm
    ls_disp = ls_parm
    Else
    ls_data = Left ( ls_parm , ll_pos - 1 )
    ls_disp = Mid ( ls_parm , ll_pos + 1 )
    End If
    dwp.SetItem(dwp.GetRow(),"value",ls_data)
    dwp.SetItem(dwp.GetRow(),"dispvalue",ls_disp)
    dwp.AcceptText()
    end if
    4. MenuItem = m_clear "&D.清除本列"
    Visible = true Enabled = true
    5. Script for: clicked event
    datawindow dwp
    dwp = Message.PowerObjectParm
    dwp.DeleteRow(0)
    dwp.InsertRow(0)
    End of Script
    MenuItem = m_return "&N.返回"
    Visible = true Enabled = true

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网