1 (изменено: Indomito, 2016-07-20 20:50:29)

Тема: AHK: GUI ListView настройка VScroll/HScroll

Приветствую.

Мой вопрос похож на AHK: VScroll/HScroll для GUI., но немножко другой.

Вопрос №1  Как принудительно показывать VScroll - в любом случае?
Вопрос №2  Как принудительно не показывать НScroll, даже если общая ширина больше заданной?


Код есть, вот его фрагмент.

;=======================================================================================
;Подпрограмма генерации справки-дигностики
;=======================================================================================   
lHelpGui:
  vCountChar  := StrLen(vTitleWin)
  vSizeFont   :=  12
  vSizeWinW   :=  790 ;ширина размер по X
  vSizeWinH   :=  590 ;высота размер по Y
  vSizeLVW    := vSizeWinW - 33
  vBtW        := 120
  vBtH        := 50  
  vBtX        := 25
  vBtY        := vSizeWinH - vBtH -10
  
  Gui, New , -maximizebox -minimizebox +AlwaysOnTop +Caption, %vTitleWin%
  Gui, Font, c000000 s12, Verdana
  Gui, Add, Text,, %vTitle%
  Gui, Add, ListView, NoSortHdr -LV0x10 r%vCountTab% w%vSizeLVW%, Ключ|Описание ключа
  Gui, Add, Text,, %vEndTitle%
  Gui, Add, Button, section Default x%vBtX% y%vBtY% w%vBtW% h%vBtH% , &Закрыть
  Loop %vCountTab%
      LV_Add("", arTable[A_Index,1],  arTable[A_Index,2], "")
  LV_ModifyCol()
  Gui, Show, Center w%vSizeWinW% h%vSizeWinH%
  SoundPlay *64
  fHelpKey := True
Return

GuiHelpEnd:
  While (fHelpKey)
    Sleep 500
  Gui, Cancel
Return
 
ButtonЗакрыть:
GuiEscape:
GuiClose:
  fHelpKey := False
  Goto GuiHelpEnd
Return
"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

2

Re: AHK: GUI ListView настройка VScroll/HScroll

2) Можно вот так заблокировать горизонтальную прокрутку:

Gui,add,ListView,r5 hwndidLV ,A|B
loop 10
	LV_Add("",A_Index,Format("{:050}","")) ; В 'b' добавляем 50 нулей.
LV_ModifyCol()
Gui,show,w600 h600
sleep 2000
DllCall("EnableScrollBar" ,(A_PtrSize=8) ? "Ptr":"UInt",	idLV, "UInt",0x0 ,"UInt",0x3)

3 (изменено: Indomito, 2016-07-20 22:41:55)

Re: AHK: GUI ListView настройка VScroll/HScroll

yalanne А показать вертикальную?
Хотя можно подрезать размер области... немного и она всегда будет, но всё же... это не то.

Да, можно и до Gui,show, только вот проблемка скролл пропал, но осталось его поле.

Gui,add,ListView,r5 hwndidLV ,A|B
loop 10
	LV_Add("",A_Index,Format("{:050}","")) ; В 'b' добавляем 50 нулей.
LV_ModifyCol()
DllCall("EnableScrollBar" ,(A_PtrSize=8) ? "Ptr":"UInt",	idLV, "UInt",0x0 ,"UInt",0x3)
Gui,show,w600 h600

Его то как убрать?

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

4

Re: AHK: GUI ListView настройка VScroll/HScroll

Можно так подрезать.

Gui,add,ListView,r5 hwndidLV ,A|B
loop 10
	LV_Add("",A_Index,Format("{:050}","")) ; В 'b' добавляем 50 нулей.
LV_ModifyCol()
DllCall("EnableScrollBar" ,(A_PtrSize=8) ? "Ptr":"UInt",	idLV, "UInt",0x0 ,"UInt",0x3)
CutCtrl(idLV,18)
Gui,show,w600 h600

Return





CutCtrl(id,num)
{
	Local w,h
	ControlGetPos,,,w,h,,ahk_id %idLV%
	WinSet, Region, %  "0-0 " w "-0 " w "-" h-num " 0-" h-num,ahk_id %id%
}

5

Re: AHK: GUI ListView настройка VScroll/HScroll

Спасибо, остался один вопрос - небольшой.

В функции CutCtrl(idLV,18) есть параметр idLV.
Он берётся из Gui,add,ListView,r5 hwndidLV ,A|B.

Верно?

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

6 (изменено: Indomito, 2016-07-21 00:06:52)

Re: AHK: GUI ListView настройка VScroll/HScroll

У меня прикол, т.е. я чтото не понимаю.

Написал только  и все скроллы отрубились.

Gui, Add, ListView, NoSortHdr -LV0x10 r%vCountTab% w%vSizeLVW% hwndidLV, Ключ|Описание ключа

В тестовом варианте работает как положено.

В чём причина?


UPD
У меня переменное число строк - сам дурак.
Тема закрыта.

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download