zy123518763
级别: 略有小成
精华主题: 0
发帖数量: 102 个
工控威望: 216 点
下载积分: 753 分
在线时间: 103(小时)
注册时间: 2017-08-20
最后登录: 2022-08-11
查看zy123518763的 主题 / 回贴
楼主  发表于: 2019-01-13 10:11
屏的型号是TK6071ip的,  我试过用宏,但是不知道为什么,如果用宏的话, 只用输入密码前4位 就可以登陆了,  请大神看看。
在触摸屏添加的密码输入地址是  LW0  



macro_command main()

char M[20]                                      //定义M 是一个20个字的 字符串数组
char password_input[20]                //定义password_input 是一个20个字的 字符串数组

int A
int password_clean=00000000
int page_main
int page_system
int password_admin

GetData(M[0] "Local HMI" rw,10,20)
SetData(M[0] "Local HMI" rw,20,20)



GetData(page_system "Local HMI" lw,9502,1)     //获取用户密码2的值放到  page_system  里面
GetData(page_main "Local HMI" lw,9504,1)       //获取用户密码3的值放到    page_main   里面

GetData(password_input[0] "Local HMI" lw,0,20)     //获取LW0里面的值,将值放到password_input里面。

if  password_input[0] == M[0] then                            //如果password_inpu  等于M  ,就把page_system 里面的值写入到lw9220

      
        SetData(page_system "Local HMI" lw,9220,1)            
      
    else if  password_input[0] == password_admin then    //如果 password_inpu  等于password_admin    就把page_system 里面的值写入到lw9220
      
        SetData(page_main"Local HMI" lw,9220,1)
      

    end if

  GetData(A,"Local HMI" lw,9050,1 )     //获取触摸屏当前 页面地址
   if A == 11     then                                 //如果等于11,  就将password_clean 写入到lw0.

  
   SetData(password_clean "Local HMI" lw,0,1)
    end if
  
end macro_command
[ 此帖被zy123518763在2019-01-13 10:16重新编辑 ]