Форум: "Прочее";
Текущий архив: 2006.12.31;
Скачать: [xml.tar.bz2];
ВнизЗабавный скроллбар Найти похожие ветки
← →
Rouse_ © (2006-12-11 16:34) [40]
> Эти-то скорллбары в окно встраиваются.
Угу, я ж говорю, что у нас кастом, (см картинку, обрати внимание на нижний скролл) и приходится использовать не родные, а ручками.
← →
Игорь Шевченко © (2006-12-11 16:43) [41]Rouse_ © (11.12.06 16:34) [40]
Не разглядел с первого раза :)
← →
Иксик © (2006-12-11 16:48) [42]Отличная штука!!
← →
vidiv © (2006-12-11 16:53) [43]
> Он патентанул только программу.
Программы в РФ нельзя патентовать
← →
Kerk © (2006-12-11 18:37) [44]Для больших документов он не пригоден, а в маленьких я и так неплохо ориентируюсь :)
Для больших документов его можно скрестить с реализацией сколлбара в Picasa
← →
Kolan © (2006-12-11 19:15) [45]> Picasa
Ну а скриншот?
← →
Джо © (2006-12-11 19:17) [46]Странный в этой пикасе скроллбар. До сих пор не могу понять абстракцию, кою он представляет. Хотя программой пользуюсь более полугода.
← →
antonn © (2006-12-11 19:23) [47]в ворд бы его, а то я постоянно путаюсь, номер какой страницы появляется в хинте скролбара (не то что бы путаюсь - матерюсь и ругаюсь:) потому как если на экране 4 пиксела от нижнего края предыдущей страницы - в хинте номер той страницы)
да и в дельфи бы не помешал
← →
Kerk © (2006-12-11 19:25) [48]> [46] Джо © (11.12.06 19:17)
Я сходу понял :))
http://kerkzone.net/images/trash/picasa_sb.jpg
Забыл еще там указать, что прямоугольник, обозначающий положение страницы,и меняет высоту в зависимости от количества разделов с фотками, видимых пользователями одновременно.
← →
Kolan © (2006-12-11 19:50) [49]> дельфи бы не помешал
А что тут можно придумать?
← →
Sapersky (2006-12-11 19:51) [50]Сметчики не жалуются, ибо удобно им :)
Сорри за оффтоп, но некоторые сметчики недовольны отсутствием поддержки двухколёсной мыши. И ещё кое-чем, хотя версия у них явно более старая, чем та, что на скриншоте.
← →
Kolan © (2006-12-11 19:54) [51]> хотя версия у них явно более старая
Ну так в чем жалоба то? В новой наверно учтено...
← →
Rouse_ © (2006-12-11 21:26) [52]
> Сорри за оффтоп, но некоторые сметчики недовольны отсутствием
> поддержки двухколёсной мыши.
Двухколесной это, простите, через как?
← →
Kolan © (2006-12-11 21:28) [53]> [52] Rouse_ © (11.12.06 21:26)
>
> > Сорри за оффтоп, но некоторые сметчики недовольны отсутствием
>
> > поддержки двухколёсной мыши.
>
> Двухколесной это, простите, через как?
Это одно колесо верх низ, друго право лево...
← →
wicked © (2006-12-11 21:44) [54]
> Я испугался. Скроллбары, которые в окнах, они NCPAINT не
> получают. Их окно получает, ну и эти...скроллбары рисует.
> Также как рамку, полосу меню и прочие неклиентские штучки.
но перехватить и обработать это можно...
например, вот такие сообщения пришлось перехватывать для "скинового движка"... отрывок из WindowProc:switch(Msg.Msg){
case WM_DESTROY:
ControlDestroy(Msg);
break;
case WM_NCCALCSIZE:
ControlNCCalcSize(Msg);
break;
case WM_NCPAINT:
ControlNCPaint(Msg);
break;
case WM_PAINT:
ControlPaint(Msg);
break;
case WM_SIZE:
ControlSize(Msg);
break;
case WM_STYLECHANGED:
ControlStyleChanged(Msg);
break;
case WM_STYLECHANGING:
ControlStyleChanging(Msg);
break;
case WM_NCHITTEST:
ControlNCHitTest(Msg);
break;
case WM_NCLBUTTONDOWN:
case WM_NCLBUTTONDBLCLK:
ControlNCLButtonDown(Msg);
break;
case WM_NCLBUTTONUP:
case WM_LBUTTONUP:
ControlButtonUp(Msg);
break;
case WM_NCMOUSEMOVE:
ControlNCMouseMove(Msg);
break;
case WM_MOUSEMOVE:
ControlMouseMove(Msg);
break;
/* case WM_ERASEBKGND:
ControlEraseBkgnd(Msg);
break;*/
case WM_HSCROLL:
ControlHScroll(Msg);
break;
case WM_VSCROLL:
ControlVScroll(Msg);
break;
default:
Recall(Msg);
}
отрывок кода реально работающей программы
← →
Gero © (2006-12-11 22:37) [55]> [54] wicked © (11.12.06 21:44)
> вот такие сообщения пришлось перехватывать для "скинового
> движка"
В общем-то, список вполне предсказуемый.
← →
Игорь Шевченко © (2006-12-11 22:39) [56]wicked © (11.12.06 21:44) [54]
Для Caption"а в свое время пришлось перехватывать
WM_SETTEXT
WM_SYSCOMMAND
WM_SETICON
WM_NCPAINT
WM_NCACTIVATE
WM_NCMOUSEMOVE
WM_NCLBUTTONDOWN
WM_INITMENUPOPUP
← →
wicked © (2006-12-11 22:50) [57]> Gero © (11.12.06 22:37) [55]
> В общем-то, список вполне предсказуемый.
как раз необходимость отрабатывать "мышиные" сообщения для того, чтобы "скроллеры" работали было неприятной неожиданностью... почему так - поленился разобраться
> Игорь Шевченко © (11.12.06 22:39) [56]
> WM_SETTEXT
> WM_SYSCOMMAND
> WM_SETICON
> WM_INITMENUPOPUP
до этих дело не дошло... либо плохо оттестировал, либо перекрыто в других местах... хотя скиновый компонент полностью отрисовывал окна, к которым был привязан и запускался на 98SE (под VM ware), XP (с включенными и выключенными темами)... жаль, что прожект "заглох" - скиновый движок в стадии стабильной беты... но это уже не от меня зависит
← →
Игорь Шевченко © (2006-12-11 22:58) [58]wicked © (11.12.06 22:50) [57]
А на XP я не видел нормально работающего механизма, позволяющего произвольно отрисовывать неклиентскую область. При каких-то действиях в каких-то местах все равно проскакивает XP"шное оформление. Либо надо слишком много писать, либо делать полностью клиентское окно и имитировать неклиентские области самостоятельно.
← →
Eraser © (2006-12-11 23:05) [59]> [58] Игорь Шевченко © (11.12.06 22:58)
> либо делать полностью клиентское окно и имитировать неклиентские
> области самостоятельно.
imho, в случае работы со скинами, это самый простой вариант, т.к. перехватывать надо только WM_NCHITTEST.
другое дело если требуется добавить свои элементы в неклиентскую область..
← →
Sapersky (2006-12-12 14:17) [60]Rouse_ © (11.12.06 21:26) [52]
http://www.nix.ru/autocatalog/mouse_a4/A4-Tech_Optical_GreatEye_2-Wheel_WOP-35PU_5but_2Roll_9953.html
Я так понимаю, дело именно в том, что у вас "кастом".
Двухколёсная мышь сама по себе нестандартное устройство, Windows ИМХО непосредственно их не поддерживает. Для мыши ставится драйвер, который опрашивает второе колесо и выполняет прокрутку в активном скролл-окне.
Так что нужно либо изо всех сил притворяться стандартным окном, либо попробовать добраться до второго колеса вручную, через DirectInput что ли, который как раз и предназначен для работы с нестандартными многоосевыми устройствами. Впрочем, возможно, китайские мастера сделали сугубо офисную мышь и DirectInput её увидит как обычную.
Кстати о DirectInput: вот у меня ещё джойстик есть... :))
← →
Rouse_ © (2006-12-12 14:26) [61]Джойстик? :)
Представил себе ситуевину, когда сметчик прирутил себе руль, три педали, джойстик и виртуальный шлем в придачу и пытается работать :)
Не - такое мы врятли будем поддерживать :)
Страницы: 1 2 вся ветка
Форум: "Прочее";
Текущий архив: 2006.12.31;
Скачать: [xml.tar.bz2];
Память: 0.57 MB
Время: 0.042 c