找回密码
 加入
搜索
查看: 2191|回复: 2

[GUI管理] 编辑框(edit)外部输入数据换行的问题

[复制链接]
发表于 2014-3-29 22:12:55 | 显示全部楼层 |阅读模式
本帖最后由 levinfish 于 2014-3-29 22:49 编辑

编了一个小的软件,需要从外部将数据读取到编辑框中,使用guictrlsetdata, 可以将数据输入编辑框,但是读入的数据全显示在一个段落里面,无法分行。
已经在GUICtrlSetData($edit,$array[$i],@CRLF)的参数中使用了换行标志,但是不起作用。
使用controlsend函数,可以实现换行,但是数据量大的话,执行程序,很长时间才能将数据显示出来。

使用GUICtrlSetData($edit,$array[$i]@CRLF,'a')可以实现,今天貌似很晕。

#include <EditConstants.au3>
#Include <GuiStatusBar.au3>
#include <GUIConstantsEx.au3>
#include <GUIConstantsEx.au3>
#include <file.au3>
#include <array.au3>
#include <WindowsConstants.au3>
#include <GuiTab.au3>
#include <date.au3>


Dim $array[6]=['6','1','2','3','4','5']

Dim $edit

GuiDrawing()
                       
Func GuiDrawing()
    $guiparent=GUICreate("测试", 600, 600)
        $edit=GUICtrlCreateEdit('',60,80,500,460,$ES_WANTRETURN + $WS_VSCROLL)
       
        For $i=1 To 5
                GUICtrlSetData($edit,$array[$i],@CRLF)
        Next       

    GUISetState()
        While 1
        $msg = GUIGetMsg()
                Switch $msg                       
                        Case $GUI_EVENT_CLOSE
                                Exit
                EndSwitch
        WEnd
EndFunc[/code]
 楼主| 发表于 2014-3-29 22:30:56 | 显示全部楼层
刚才试了一下,使用ControlSend("测试",'' ,$edit,$array[$i]&@CR)可以实现
虽然可以实现换行,但是不知道二者为什么会有这个差异
发表于 2014-3-29 22:59:20 | 显示全部楼层
For $i = 1 To 5
        GUICtrlSetData($edit, $array[$i] & @CRLF, 1)
Next
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-17 00:52 , Processed in 0.071717 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表