Что нового

[Баг] GuiCtrlCreateUpdown ограничен числом 32767

dwerf

Использует ArchLinux
Сообщения
478
Репутация
218
Собственно сабж. При попытке увеличить это число с помощью GuiCtrlSetLimit меняется стиль UpDown'а, сам лимит уменьшается.

Код:
#include <EditConstants.au3>
#include <UpdownConstants.au3>

$iLimit = 32765
$iDefault = 32765

For $i = 0 to 7 Step +1
	GUI()
	$iLimit += 1
Next

Func GUI()
	$Form1 = GUICreate('Example')
	$Input1 = GUICtrlCreateInput($iDefault, 10, 40, 100, 20, $ES_RIGHT)
	$Updown1 = GUICtrlCreateUpdown($Input1, $UDS_NOTHOUSANDS)
	$Input2 = GUICtrlCreateInput(-1*$iDefault, 120, 40, 100, 20, $ES_RIGHT)
	$Updown2 = GUICtrlCreateUpdown($Input2, $UDS_NOTHOUSANDS)

	If $i Then
		$Label1 = GUICtrlCreateLabel('$iLimit = ' & $iLimit, 10, 10, 100, 20)
		GUICtrlSetLimit($Updown1, $iLimit, -1*$iLimit)
		GUICtrlSetLimit($Updown2, $iLimit, -1*$iLimit)
	Else
		$Label1 = GUICtrlCreateLabel('No limits.', 10, 10, 100, 20)
	EndIf

	GUISetState(@SW_SHOW, $Form1)

	Do
	Until GUIGetMsg() = -3

	GUISetState(@SW_HIDE, $Form1)

	GUICtrlDelete($Label1)
	GUICtrlDelete($Updown2)
	GUICtrlDelete($Input2)
	GUICtrlDelete($Updown1)
	GUICtrlDelete($Input1)
	GUIDelete($Form1)
EndFunc
 

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5 379
Репутация
2 711
Я не знаю почему в AutoIt используется UDM_SETRANGE вместо UDM_SETRANGE32.

:-\

Нужно будет все проверить, а пока могу предложить устанавливать пределы для UpDown следующим образом:

Код:
#Include <WindowsConstants.au3>

...

Global Const $UDM_SETRANGE32 = $WM_USER + 111

...

_SendMessage(GUICtrlGetHandle($Updown1), $UDM_SETRANGE32, -$iLimit, $iLimit)
 
Автор
D

dwerf

Использует ArchLinux
Сообщения
478
Репутация
218
Yashied сказал(а):
Я не знаю почему в AutoIt используется UDM_SETRANGE вместо UDM_SETRANGE32.

:-\

Нужно будет все проверить, а пока могу предложить устанавливать пределы для UpDown следующим образом:
Спасибо, работает.

Похоже уже всё проверили. Надо было сразу там глянуть.
Оффсайт сказал(а):
Changed 3 weeks ago by Jpm

owner set to Jpm
status changed from new to closed
resolution set to Fixed
milestone set to 3.3.7.0

Fixed by revision [5899] in version: 3.3.7.0
 
Верх