Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.09.16;
Скачать: CL | DM;

Вниз

Подправить 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 вся ветка

Текущий архив: 2002.09.16;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.012 c
14-50958
Феликс
2002-08-21 23:18
2002.09.16
Odigo - прикольная вещь!


1-50764
Tuzemec
2002-09-04 17:21
2002.09.16
Между модулями


1-50785
maxim2
2002-09-03 14:25
2002.09.16
Хочу сделать такое окно как редактор кода в делфи


1-50662
lmr
2002-09-02 16:18
2002.09.16
Как Variant привести к int64 ?


1-50791
MaximatorVeter
2002-09-03 15:06
2002.09.16
Не могу разобраться как работает метод Assign