Вывод текста в заданном формате
В общем надо чтобы при вводе текста в Input/edit введенный текст отображался в заданном формате в частности через _StringAddThousandsSep, т.е
я ввожу "123456789", а СРАЗУ выводится "123 456 789"("123,456,789"), или ввожу "абв" а выводится "АААБББВВВ" и т.п. Func WM_COMMAND($hWnd, $iMsg, $iwParam, $ilParam) #forceref $hWnd, $iMsg Local $hWndFrom, $iIDFrom, $iCode $hWndFrom = $ilParam $iIDFrom = BitAND($iwParam, 0xFFFF) ; Low Word $iCode = BitShift($iwParam, 16) ; Hi Word Switch $iIDFrom Case $input1 Switch $iCode Case $EN_CHANGE $a=GUICtrlRead($input1) GUICtrlSetData($input1, _StringAddThousandsSep($a)) EndSwitch EndSwitch Return $GUI_RUNDEFMSG EndFunc ;==>WM_COMMAND Хелп плз. |
Цитата:
Код:
#include <GuiConstantsEx.au3> |
Вот, пример:
Код:
#include <String.au3> |
Большое спасибо за оперативные ответы.
Цитата:
GUICtrlSetData($Input_1, _StringAddThousandsSep($sInput_Read)) но это не работает: при вводе 123456789 он выдает 1,23456789 Спасибо beve, я понял в чем была обшибка. _StringAddThousandsSep не правильно обрабатывает строку с пробелами(которые сам и ставил), т.е "1 2345" превращались "1,2345". Надо было просто каждый раз убирать пробелы. Цитата:
|
Цитата:
А там в моем примере StringRegExpReplase заменяет не пробел(хотя оно и выглядит как пробел)... Там не пробел, а то что в параметре "sThousand", по адресу:[HKEY_CURRENT_USER\Control Panel\International] А что оно, пока не знаю...если бы кто объяснил... P.S. или это только в меня этот глюк в системе, везде пишут, что там в реестре именно пробел, и выглядит оно как пробел, но если ставить пробел в функции $a1=StringRegExpReplace($a,"*","") - не работает, а если значение из реестра, то Гуд... :o Вот, значение из реестра, при копировании сюда на форум заменяется звездочкой почемуто... |
Это символ с порядковым номером 160 (A0, 00A0)
У обычного пробела порядковый номер 32 (20, 0020) |
Цитата:
|
$S = Chr(160)
StringRegExpReplace($a, $S,"") Ну или сразу функцию на место вставить. |
Цитата:
|
Да там не совсем пробел, вначале тоже поставило в тупик. Короче поставил тысячным разделителем ",". Мне нужен был input-калькулятор, вто что вышло
Код:
#include <String.au3> |
Цитата:
|
Время: 22:53. |
Время: 22:53.
© OSzone.net 2001-