Как прикрепить системную полосу прокрутки к моему элементу управления - PullRequest
1 голос
/ 09 февраля 2010

У меня есть элемент управления, и я хочу прикрепить вертикальную полосу прокрутки к своему элементу управления. Пожалуйста, не предлагайте мне использовать панель управления. На самом деле. Я хочу знать, как программировать Windows на C #. Пожалуйста, помогите мне с кодом в C #. Спасибо.

Ответы [ 2 ]

1 голос
/ 09 февраля 2010

Системная полоса прокрутки в Windows является частью не-клиентской области окна. Вы сообщаете Windows, что вам нужны полосы прокрутки, добавляя стили WS_HSCROLL и WS_VSCROLL в окно при его создании.

Затем вы используете функции Windows, чтобы установить диапазон прокрутки и положение большого пальца. Вы получаете сообщения WM_HSCROLL и / или WM_VSCROLL в своей оконной процедуре, когда пользователь нажимает на вашу полосу прокрутки или перетаскивает большой палец полосы прокрутки. Класс окна с именем SCROLLBAR - это просто дочернее окно со стилем WS_HSCROLL или WS_VSCROLL без клиентской области.

См. Функции полосы прокрутки для получения информации о том, как сделать это в коде Win32 C ++.

Если вы используете формы .NET, вы должны получить свой собственный класс окна из класса ScrollableControl, который упоминал Бенни.

1 голос
/ 09 февраля 2010

вы можете получить свой контроль из system.windows.forms.scrollablecontrol, который даст вам возможность прокрутки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...