sprinkle 发表于 2008-8-10 22:43:05

如何让LIST控件里的文字用不同颜色显示?

$Edit1 = GUICtrlCreateList("", 6, 243, 343, 200, BitOR($ES_AUTOVSCROLL, $ES_AUTOHSCROLL, $ES_WANTRETURN, $WS_VSCROLL))

GUICtrlSetData($Edit1, "这行文字颜色为红色! " & @CRLF & "|")

GUICtrlSetData($Edit1, "这行文字颜色为黑色! " & @CRLF & "|")

有没有方法让同一个LIST控件里的文字用不同颜色显示?

[ 本帖最后由 sprinkle 于 2008-8-20 03:22 编辑 ]

netegg 发表于 2008-8-10 23:03:13

这段代码出来的应该只是一行文本吧

sprinkle 发表于 2008-8-10 23:17:53

是2行文字的

5yun 发表于 2008-8-15 16:16:28

可能 很难吧 要获取hdc来修改 au3本身没有这些功能的吧

漠北雪~狼 发表于 2008-8-15 16:50:27

可以用ListView来做到:


#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <ListviewConstants.au3>
$Form1 = GUICreate("Form1", 633, 447, 193, 125)
$List1 = GUICtrlCreateListView(" ", 80, 64, 460, 230,$LVS_NOCOLUMNHEADER)
GUICtrlSendMsg($List1, 0x101E, 0, 455)
GUISetState(@SW_SHOW)
$I = GUICtrlCreateListViewItem("这个是红色", $List1)
GUICtrlSetColor(-1, 0xFF0000)
$I = GUICtrlCreateListViewItem("这个是黑色", $List1)

While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
   Exit
EndSwitch
WEnd

5yun 发表于 2008-8-17 18:42:25

listview的确可以 不知能不能在同一行换字体的颜色
页: [1]
查看完整版本: 如何让LIST控件里的文字用不同颜色显示?