zoukankan      html  css  js  c++  java
  • ifix 在切换菜单按钮弹出”已打开该画面“bug修复

    在ifix项目中,实际上会用到点击按钮弹出按钮菜单,点击另一按钮弹出另一按钮菜单的情况。一般在使用过程中切换菜单可有如下两种普遍做法:

    1.使用ClosePicture “Middle",0 关闭当前画面,OpenPicture "***.grf”,"Middle","",""打开新画面(比如上述的按钮菜单画面)

    2.使用切换画面命令 replacePicture "***.grf","Middle","",0

    如下图所示:

    当使用上述两种方法时,会出现一个问题,当点击系统拓扑图,或者历史报警等其余项目时,一二期监控按钮又变成了可点击状态,但是一二期按钮栏未退出,当再次点击一二期监控按钮时就会报错:诸如,"点击的画面已打开”之类的错误


    解决方法:

    利用新建全局变量isopen作为标志点。将一二期监控,和三期监控按钮做切换动作,保证当按其他按钮时,不执行replacepicture操作。

    代码如下:

    Private Sub 三期按钮_Click()
        closepicture "MIDDLE"
        If user.isOpen.CurrentValue = 0 Then
      replacepicture "三期按钮栏.grf", "MIDDLE1", "", 0
      user.isOpen.CurrentValue = 1
       End If
    End Sub

    Private Sub 一二期按钮_Click()
        closepicture "MIDDLE"
        If user.isOpen.CurrentValue = 1 Then
        replacepicture "二期按钮栏.grf", "MIDDLE1", "", 0
        user.isOpen.CurrentValue = 0
        Else
        user.isOpen.CurrentValue = 0
        End If
    End Sub

    经测试,有效的解决了上述bug,作为记录。

    注:(2018-05-03)

    上述方法并不是个很好的方法,使用原先的简单方法即可解决此问题。

    修改如下:

    二期按钮;

    closepicture "MIDDLE"

    openpicture "test.grf","MIDDLE","",""//打开一个按钮栏中的默认画面,放置MIDDLE别名下无画面。

    openpicture "二期按钮栏.grf", "MIDDLE1", "", ""

    三期按钮;

    closepicture "MIDDLE"

    openpicture "test1.grf","MIDDLE","",""//打开一个按钮栏中的默认画面,放置MIDDLE别名下无画面。

    openpicture "三期按钮栏.grf", "MIDDLE1", "", ""

  • 相关阅读:
    sql笔记
    [ACTF2020 新生赛]Include
    [极客大挑战 2019]Http
    [极客大挑战 2019]Knife
    [极客大挑战 2019]Secret File
    [HCTF 2018]admin
    [极客大挑战 2019]Havefun
    [RoarCTF 2019]Easy Calc
    ascll码转化
    《逆向工程核心原理》笔记第一章到第十一章
  • 原文地址:https://www.cnblogs.com/cache-yuan/p/9042340.html
Copyright © 2011-2022 走看看