Проблема с фокусами..
Есть форма, на канве формы идет отрисовка.
Есть обработчик событий OnKeyPress(у формы)
Когда сбросил на формы ScrollBar, OnKeyPress формы
перестал работать, потому что фокус все время на ScrollBar.
Вопрос: как сделать так чтобы фокус был все время на форме.
Пробовал: Form->SetFocus(); - все равно фокус у скролла
пробовал
void __fastcall TForm::ScrollBarEnter(TObject *Sender)
{
Form->SetFocus();
}
и Tab Order тоже менял...
все равно фокус сразу при создании формы на ScrollBar и с него уходить не хочет..
Помогите плиз...
Цитата:
Originally posted by AlexSob
Появилась такая проблема:
Есть форма, на канве формы идет отрисовка.
Есть обработчик событий OnKeyPress(у формы)
Когда сбросил на формы ScrollBar, OnKeyPress формы
перестал работать, потому что фокус все время на ScrollBar.
Вопрос: как сделать так чтобы фокус был все время на форме.
Пробовал: Form->SetFocus(); - все равно фокус у скролла
пробовал
void __fastcall TForm::ScrollBarEnter(TObject *Sender)
{
Form->SetFocus();
}
и Tab Order тоже менял...
все равно фокус сразу при создании формы на ScrollBar и с него уходить не хочет..
Помогите плиз...
Появилась такая проблема:
Есть форма, на канве формы идет отрисовка.
Есть обработчик событий OnKeyPress(у формы)
Когда сбросил на формы ScrollBar, OnKeyPress формы
перестал работать, потому что фокус все время на ScrollBar.
Вопрос: как сделать так чтобы фокус был все время на форме.
Пробовал: Form->SetFocus(); - все равно фокус у скролла
пробовал
void __fastcall TForm::ScrollBarEnter(TObject *Sender)
{
Form->SetFocus();
}
и Tab Order тоже менял...
все равно фокус сразу при создании формы на ScrollBar и с него уходить не хочет..
Помогите плиз...
Не проще ли назначить один обработчик для формы и линейки прокрутки?
Цитата:
Originally posted by kot_
Не проще ли назначить один обработчик для формы и линейки прокрутки?
Не проще ли назначить один обработчик для формы и линейки прокрутки?
Если не сложно, можете ответить как это сделать?(хотя бы в общих чертах)
Заранее большое спасибо!
Цитата:
Originally posted by AlexSob
Появилась такая проблема:
Есть форма, на канве формы идет отрисовка.
Есть обработчик событий OnKeyPress(у формы)
Когда сбросил на формы ScrollBar, OnKeyPress формы
перестал работать, потому что фокус все время на ScrollBar.
Вопрос: как сделать так чтобы фокус был все время на форме.
Пробовал: Form->SetFocus(); - все равно фокус у скролла
пробовал
void __fastcall TForm::ScrollBarEnter(TObject *Sender)
{
Form->SetFocus();
}
и Tab Order тоже менял...
все равно фокус сразу при создании формы на ScrollBar и с него уходить не хочет..
Помогите плиз...
Появилась такая проблема:
Есть форма, на канве формы идет отрисовка.
Есть обработчик событий OnKeyPress(у формы)
Когда сбросил на формы ScrollBar, OnKeyPress формы
перестал работать, потому что фокус все время на ScrollBar.
Вопрос: как сделать так чтобы фокус был все время на форме.
Пробовал: Form->SetFocus(); - все равно фокус у скролла
пробовал
void __fastcall TForm::ScrollBarEnter(TObject *Sender)
{
Form->SetFocus();
}
и Tab Order тоже менял...
все равно фокус сразу при создании формы на ScrollBar и с него уходить не хочет..
Помогите плиз...
TForm::KeyPreview = true;
только вопрос не решился до конца..
KeyPreview, не отлавливает стрелки вниз, вверх..
есть картинка на форме, есть вертикальных и горизонтальный скролл. хочу, когда жмешь вниз-вверх работал вертикальный скролл, а влево-вправо горизонтальный..
для этого, насколько я понимаю, мне нужен постоянно фокус на форме, и если жмем на стрелки, то давать фокус скроллу, а потом сразу его забирать..
- это правильное решение такой задачи?
подскажите как можно это реализовать..
заранее большое спасибо
Цитата:
Originally posted by AlexSob
GIZMO, спасибо. заработало!
только вопрос не решился до конца..
KeyPreview, не отлавливает стрелки вниз, вверх..
есть картинка на форме, есть вертикальных и горизонтальный скролл. хочу, когда жмешь вниз-вверх работал вертикальный скролл, а влево-вправо горизонтальный..
для этого, насколько я понимаю, мне нужен постоянно фокус на форме, и если жмем на стрелки, то давать фокус скроллу, а потом сразу его забирать..
- это правильное решение такой задачи?
подскажите как можно это реализовать..
заранее большое спасибо
GIZMO, спасибо. заработало!
только вопрос не решился до конца..
KeyPreview, не отлавливает стрелки вниз, вверх..
есть картинка на форме, есть вертикальных и горизонтальный скролл. хочу, когда жмешь вниз-вверх работал вертикальный скролл, а влево-вправо горизонтальный..
для этого, насколько я понимаю, мне нужен постоянно фокус на форме, и если жмем на стрелки, то давать фокус скроллу, а потом сразу его забирать..
- это правильное решение такой задачи?
подскажите как можно это реализовать..
заранее большое спасибо
Баян. :) Один и тот же обработчик нажатия клавиши как для скролла так и для формы. Только лучше не KeyPress а KeyUp.
Всем спасибо. Буду пробовать