邪恶海盗 发表于 2012-9-14 18:02:49

关于listviewitem高度和不满足条件则锁定按钮的问题(有源码)

本帖最后由 邪恶海盗 于 2012-9-14 18:04 编辑


#include <ListviewConstants.au3>
#Include <GuiListView.au3>
#include <GUIConstantsEx.au3>
#include <EditConstants.au3>


$WinMain = GUICreate("softname", 300, 162) ;创建主窗口
$lab1=GUICtrlCreateLabel("机器码:123456",10,12,112,18)
$lab2=GUICtrlCreateLabel("注册码:",10,30,42,18)
$key=IniRead(@ScriptDir &"\key.txt","okey","key","请输入注册码")
$input1=GUICtrlCreateInput($key,55,28,80,18)
$btn1=GUICtrlCreateButton("注册",150,28,30,18)
$List2 = GUICtrlCreateListView("12|2|123|454|jjj", 10, 54, 280, 40,$LVS_EX_GRIDLINES,$ES_CENTER)
GUICtrlSetFont(-1, 12, 500, 0, "", 18)
$btn2=GUICtrlCreateButton("写入数据",80,128,70,18)

GUISetState(@SW_SHOW)


While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        ;DirRemove($Temp, 1)
                        Exit
                       
                Case $btn1
IniWrite(@ScriptDir&"\key.txt","okey","key",GUICtrlRead($input1))                       
                Case $btn2
                $item=GUICtrlCreateListViewItem("1|2|3|4|4",$List2)
       
                                EndSwitch
WEnd
目的1:注册码不正确的时候锁定按钮...

目的2:listviewitem高度怎么调???

netegg 发表于 2012-9-14 18:30:32

你最近怎么净是listview的事,不知道p侠的那个禁用合适不合适,如果不合适的话恐怕要自己控制了

邪恶海盗 发表于 2012-9-14 20:41:41

回复 2# netegg


最近在写一个程序,要用到列表功能...

一边看帮助一边慢慢写,不会画UI,只会一行行写代码,伤不起啊...{:face (319):}

    求分享,求科普...

298311657 发表于 2012-9-14 22:06:50

listview如果没记错的话,是不能设置高度的。当然如果非要设置高度,也有变通的办法,那就是给listview控件绑定一个imagelist,通过设置imagelist的大小来变相控制listview高度。这样做的话,listview每行都会有图标。

如果想要一个功能强大的表格控件,可以试试vsflex,我在论坛里有发过例子

netegg 发表于 2012-9-15 08:02:03

_GUICtrlListView_SetView的示例有改变项目高度的代码

邪恶海盗 发表于 2012-9-15 10:50:44

本帖最后由 邪恶海盗 于 2012-9-15 10:56 编辑

回复 5# netegg


#Include <GuiListView.au3>
_GUICtrlListView_SetView($hWnd, $iView)

参数

$hWnd Handle to the control
$iView View state for the control:
0 - Details
1 - Large Icon
2 - List
3 - Small Icon
4 - Tile

E文看不懂...{:face (319):}

netegg 发表于 2012-9-15 11:18:00

不是说了看示例吗,运行看看有图标吗

邪恶海盗 发表于 2012-9-15 13:25:45

回复 4# 298311657



      .TextMatrix(0, 0) = "8888";设置0行0列单元格数据,下同
      .TextMatrix(0, 1) = "combox"
      .TextMatrix(0, 2) = "chkbox"
      .TextMatrix(0, 3) = "btn"

没用???

邪恶海盗 发表于 2012-9-15 13:26:24

回复 7# netegg


    没图标,示例看不懂...

kk_lee69 发表于 2012-9-15 13:28:57

回复 8# 邪恶海盗

蛋大 的意思是 你得看 範例...範例裡面有一行 是設定圖標.....圖標沒有給 圖案的話....不就等於沒圖
然後會有一行是 設定圖標的高度.....雖然沒圖但是 高度因為 圖標的關係會被固定住...

不就等於 設定了高度.....

kk_lee69 发表于 2012-9-15 13:35:30

回复 9# 邪恶海盗

而且你多用搜尋的話不就找到答案....用 LISTVIEW 高度 去搜尋只有 四篇文章

其中.....   http://www.autoitx.com/forum.php?mod=viewthread&tid=23177&highlight=LISTVIEW%2B%B8%DF%B6%C8

答案 不就在裡面??

邪恶海盗 发表于 2012-9-15 14:08:27

回复 11# kk_lee69


    3Q...
注册的问题怎么解决???

pusofalse 发表于 2012-9-15 16:33:33

在创建主窗口之前,先调用GUIRegisterMsg注册WM_MEASUREITEM消息,在创建ListView控件的过程中时,可以在消息函数里设置ListView Item的高度。

kk_lee69 发表于 2012-9-15 17:42:16

回复 9# 邪恶海盗


    注册码不正确的时候锁定按钮...


1.所謂的註冊碼是在所有的程式一開始 就要先輸入 或者就可以判斷出 正不正確嗎??
2. 還是 程式畫面都已經運行了 出來了...然後 才需要輸入的......??

如果是1那就在你創建的時候 加一個判斷如果輸入碼正確與否的變數不正確的話 就DISABLE 掉就好
如果是2   就得把判斷 寫在 消息函數裡面去做隨時的判斷

邪恶海盗 发表于 2012-9-15 17:57:20

本帖最后由 邪恶海盗 于 2012-9-15 17:59 编辑

回复 14# kk_lee69


    我用方式2,求指导...

还有问题是如何根据首列数据来得到该行所有数据???
页: [1] 2
查看完整版本: 关于listviewitem高度和不满足条件则锁定按钮的问题(有源码)