Форум: "WinAPI";
Текущий архив: 2002.09.16;
Скачать: [xml.tar.bz2];
ВнизПодправить UpDown Найти похожие ветки
← →
SPeller (2002-07-20 14:14) [0]Привет всем! Такой вопрос: как как сделать так, чтобы UpDown из виндовых Common Controls увеличивал своё значение при нажати на верхнюю кнопку, а не наоборот ? А то плохая ему наследственность видимо от Scroll Bar"а досталась. Как можно это изменить?
← →
SPeller (2002-07-20 14:15) [1]И ещё попутный вопрос: можно ли кроме ручной отрисовки сделать что-то типа flat-стиля этому АпДауну ?
← →
SPeller (2002-07-21 15:19) [2]Что совсем никак? АУ!! МАСТЕРА !!! :)
← →
Song (2002-07-21 16:09) [3]Сделай свой UpDown :-) TEdit+2TSpeedButton
← →
SPeller (2002-07-21 18:49) [4]Да зачем мне ваш TEdit? Мне надо на АПИ. Win32 API. Знаете такое? В вопросе же написано: CommonControls. К чему-либо другому оно имеет отношение кроме ВинАПИ ?
← →
SPeller (2002-07-21 18:50) [5]Извините за сарказм.... :
← →
ZZ (2002-07-21 18:54) [6]Да бросай его нафиг, этот винапи...давай в чат :)))
← →
SPeller (2002-07-22 01:59) [7]
> ZZ © (21.07.02 18:54)
> Да бросай его нафиг, этот винапи...давай в чат :)))
Вот это как раз и не надо бросать. А обчатиться я завсегда успею... :)
← →
Proton (2002-07-22 10:05) [8]напрмер в событии WM_HSCROLL
если SB_TOP то
UDM_SETPOS (уменьшай на 2)
← →
SPeller (2002-07-23 06:51) [9]Заковырка ещё в том, что я устанавливаю его Buddy - edit, в котором отображается значение. Можно конечно перехватывать всё что есть и руками управлять едитом, едит тоже махратить, отлавливать нажатие клавиш и т.п. Но зачем всё это делать когда оно уже за нас всё сделано, проверено и отлажено? Надо всего-то изменить одно на другое и всё. Наверняка есть довольно простой способ, но я не знаю его и пытаюсь выяснить - какой?
← →
SPeller (2002-07-24 03:28) [10]АУ!!!!!!! Что-то ртвечает народ только на фанарные вопросы типа "как на чистом апи прочитать файл", а вот немного посложнее остаются без ответов.
МАСТЕРА!!! Блин!
← →
Almaz (2002-07-24 23:28) [11]
> SPeller © (23.07.02 06:51)
> Заковырка ещё в том, что я устанавливаю его Buddy - edit,
> в котором отображается значение. Можно конечно перехватывать
> всё что есть и руками управлять едитом, едит тоже махратить,
> отлавливать нажатие клавиш и т.п. Но зачем всё это делать
> когда оно уже за нас всё сделано, проверено и отлажено?
> Надо всего-то изменить одно на другое и всё. Наверняка есть
> довольно простой способ, но я не знаю его и пытаюсь выяснить
> - какой?
Все гениальное просто - устанавливаешь для UpDown инкремент = -1 и верхняя и нижняя кнопка меняются местами. Вот так:
uses ..., CommCtrl;
...
var
AccelArray: array [0..0] of TUDAccel;
...
// Handle - это handle UpDown
SendMessage(Handle, UDM_GETACCEL, 1, Longint(@AccelArray));
AccelArray[0].nInc := UINT(-1);
SendMessage(Handle, UDM_SETACCEL, 1, Longint(@AccelArray));
Удачи.
← →
SPeller (2002-07-25 05:35) [12]Спасибо.
← →
Eugen Honeker (2002-07-26 14:41) [13]luidi dobrye,
za4em delat" tak slogno, esl"i mogno namnogo
proshe???
odin ras poslat" komandu i wse
SendMessage(hwnd, UDM_SETRANGE, 0, MAKELONG($7FFF,0));
← →
SPeller (2002-07-26 17:12) [14]
> Eugen Honeker (26.07.02 14:41)
> SendMessage(hwnd, UDM_SETRANGE, 0, MAKELONG($7FFF,0));
А что означает $7FFF ? Можно его обозвать более наглядной константой?
← →
Eugen Honeker (2002-07-26 18:06) [15]a eto hex na delphi
na c byloby 0x7FFF
ili kak integer 32767
← →
Eugen Honeker (2002-07-26 18:09) [16]sorry woprosa ne ponjal
#define UD_MAXVAL 0x7fff
#define UD_MINVAL (-UD_MAXVAL)
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2002.09.16;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.006 c