candy_王子 发表于 2013-2-16 21:11:36

【已解决】关于GUI中利用INPUT控件读取值的问题

本帖最后由 candy_王子 于 2013-2-19 17:49 编辑

#include<excel.au3>

$gui=GUICreate("gui")
$input1=GUICtrlCreateInput("",50,100)
$input2=GUICtrlCreateInput("",50,200)
$button=GUICtrlCreateButton("run",50,300)
GUISetState(@SW_SHOW)

While 1
        $msg=GUIGetMsg()
        If $msg=$button Then
                If GUICtrlRead($input1)="" or GUICtrlRead($input2)="" Or guictrlread($input1)>guictrlread($input2) Or guictrlread($input1)<3 Then
                        MsgBox(0,"","error")
                Else
                        fun1(GUICtrlRead($input1),GUICtrlRead($input2))
                EndIf
        EndIf
WEnd

Func fun1($s,$f)
        $oExcel=_ExcelBookOpen(@scriptdir&"\test.xls")
        For $row=$s To $f
                  ConsoleWrite(_ExcelReadCell($oexcel,$row,1)&@CRLF)
        Next
        _ExcelBookClose($oExcel)
EndFunc利用input控件记录两个数值,在excel文件中读取第1列和以这两个值为起始结束行的数据。测试时出现了个问题,如果输入一个一位数和一个三位数(如input1输入5,input2输入100)就运行不了,但是把那个一位数改为005就可以运行。问题出在哪里?问题很初级,望大神指点

veket_linux 发表于 2013-2-16 21:23:32

guictrlread读出来的是字符串

要转成整数

candy_王子 发表于 2013-2-16 21:44:01

回复 2# veket_linux

谢谢啦!知道哪里出问题了。还想问下字符串是怎么比大小的?字符串5和字符串100哪个大?

veket_linux 发表于 2013-2-17 18:04:03

从头到尾按 字符ascii码的大小比较

自己写个程序测一下

qiu491996004 发表于 2013-2-17 18:54:48

路过学习了

candy_王子 发表于 2013-2-19 17:35:00

回复 4# veket_linux


试了~ 谢谢啦~~
页: [1]
查看完整版本: 【已解决】关于GUI中利用INPUT控件读取值的问题