![]() |
|
|
![]()
|
|
| Comm |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 269 Регистрация: 31.8.2007 Где: Санкт-Петербург Репутация: 2 Всего: 1 |
Добрый вечер.
Как программно можно прокрутить ScrollBar в TStringGrid-е ? Пробовал так :
Не поулчилось =( Спасибо за внимание! -------------------- =))))) ![]() |
|||
|
||||
| Dmi3ev |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1698 Регистрация: 28.11.2007 Репутация: 16 Всего: 41 |
вниз:
вверх:
Это сообщение отредактировал(а) Dmi3ev - 24.1.2009, 00:15 -------------------- |
||||
|
|||||
| Comm |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 269 Регистрация: 31.8.2007 Где: Санкт-Петербург Репутация: 2 Всего: 1 |
Спасибо Работает,но при прокрутке вместе со Скролом фокус строки тоже изменяется на другую.. а желательно что бы фокус строки оставался прежним...нужно как то запретить стандартное поведение TStringGrid-a на это действие,можно как нибудь ? =)
-------------------- =))))) ![]() |
|||
|
||||
| Comm |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 269 Регистрация: 31.8.2007 Где: Санкт-Петербург Репутация: 2 Всего: 1 |
Я вот тут подумал...можно как нибудь стандартынй обработчик выключить или заменить своим?
Вот например если в StringGride если прокрутить калесико мыши то прокручивается сами строки а не СкроллБар... интересно узнать где это действие генирируется и как его запретить/заменить на свой. -------------------- =))))) ![]() |
|||
|
||||
| Comm |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 269 Регистрация: 31.8.2007 Где: Санкт-Петербург Репутация: 2 Всего: 1 |
-------------------- =))))) ![]() |
|||
|
||||
| THandle |
|
|||
![]() Хранитель Клуба Награды: 1 Профиль Группа: Админ Сообщений: 3639 Регистрация: 31.7.2007 Где: Moscow, Dubai Репутация: 25 Всего: 372 |
Comm, ну пиши своего наследника от TStringGrid с новыми обработчиками ловли сообщений WM_VSCROLL, WM_HSCROLL... Ну или же подмени уже существующему WindowProc и в нем эти сообщения обрабатывай.
Еще глянь про ScrollBar'ы на msdn: http://msdn.microsoft.com/en-us/library/bb787529(VS.85).aspx |
|||
|
||||
| Comm |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 269 Регистрация: 31.8.2007 Где: Санкт-Петербург Репутация: 2 Всего: 1 |
Думал есть путь полегче,придется наверно наследника писать =)) Спасибо за ответ!
-------------------- =))))) ![]() |
|||
|
||||
| Comm |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 269 Регистрация: 31.8.2007 Где: Санкт-Петербург Репутация: 2 Всего: 1 |
Решил пойти инным путем. Кинул на форму компонент ApplicationEvents и ловлю сообщения
Очень полезная ссылка,но там функции как бы сказать "сделай сам" называются... т.е. все расчеты и перерасчеты я должен делать сам ...а это пока трудновато для меня =( -------------------- =))))) ![]() |
||||
|
|||||
| Comm |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 269 Регистрация: 31.8.2007 Где: Санкт-Петербург Репутация: 2 Всего: 1 |
Решил,кому интересно то вот:
Вот думаю как бы сделать для всех TStringGrid-ов в программе... Это... можно узнать по хендлу Msg.hwnd к какому он принадлежит классу? -------------------- =))))) ![]() |
|||
|
||||
| Rrader |
|
|||
|
Inspired =) ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1535 Регистрация: 7.5.2005 Репутация: 13 Всего: 191 |
Так а не проще ли тогда:
И Sender приводить к TStringGrid. Это сообщение отредактировал(а) Rrader - 29.1.2009, 08:30 |
|||
|
||||
| Comm |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 269 Регистрация: 31.8.2007 Где: Санкт-Петербург Репутация: 2 Всего: 1 |
Handled тут не заметил =)) Действительно проще..но не пойму как для всех StringGrid-ов это провернуть.
-------------------- =))))) ![]() |
|||
|
||||
| Rrader |
|
|||
|
Inspired =) ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1535 Регистрация: 7.5.2005 Репутация: 13 Всего: 191 |
Просто делаешь один раз эти два обработчика, а потом выделяешь все остальные StringGrid'ы и назначаешь им в инспекторе ранее созданные обработчики.
Это сообщение отредактировал(а) Rrader - 29.1.2009, 17:03 |
|||
|
||||
| Comm |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 269 Регистрация: 31.8.2007 Где: Санкт-Петербург Репутация: 2 Всего: 1 |
Сделал всё отлично,а можно ли и на Гриды другой формы эти же обработчики назначить? Спасибо огромное с меня + ... dynamic_cast я понял что это такое, а где бы можно узнать что такое reinterpret_cast ? =)))
Это сообщение отредактировал(а) Comm - 29.1.2009, 17:34 -------------------- =))))) ![]() |
|||
|
||||
| Rrader |
|
|||
|
Inspired =) ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1535 Регистрация: 7.5.2005 Репутация: 13 Всего: 191 |
Результат преобразования остается на совести программиста |
|||
|
||||
| Comm |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 269 Регистрация: 31.8.2007 Где: Санкт-Петербург Репутация: 2 Всего: 1 |
Спасибо Всем за Всё =)))
-------------------- =))))) ![]() |
|||
|
||||
![]()
|
| Правила форума "С++ Builder" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C++ Builder | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |