On-line: гостей 1. Всего: 1 [подробнее..]
АвторСообщение



Пост N: 150
Зарегистрирован: 12.07.06
ссылка на сообщение  Отправлено: 22.04.20 08:04. Заголовок: TBrowse vs мышь


В TBrowse использую событие ON CHANGE, в котором некая функция выводит в
STATUSBAR дополнительную информацию из текущей строки:
...
DEFINE TBROWSE Br_omes AT h_tlbar,0 ALIAS (al) WIDTH w_br HEIGHT h_br ;
BOLD CELLED ;
ON CHANGE Form_oMes.StatusBar.Item(1) := f_corr(1,al)
...
Если движение по строкам осуществляется клавиатурой, то все работает нормально,
в STATUSBAR'е идет корректное отображение данных функцией f_corr().
Если перемещение производить мышью, указывая строку в TBrowse или использовать
колесо прокрутки, то после отработки события ON CHANGE, данные в STATUSBAR'е
исчезают, т.е поле очищается.
В Browse в аналогичной ситуации все отрабатывает нормально.

PS Данные из STATUSBAR'а пропадают даже при навигации клавиатурой,
если указатель мыши находится над областью TBrowse!

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 7 [только новые]





Пост N: 3133
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 22.04.20 10:39. Заголовок: alex_II пишет Данные..


alex_II пишет
 цитата:
Данные из STATUSBAR'а пропадают


:nStatusItem := 0 // отключить вывод в Item
Это управление в какой Item StatusBar выводить тексты TsBrowse, смотрите
METHOD SetMsg( cText, lDefault ) CLASS TControl

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 3134
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 22.04.20 10:46. Заголовок: PS По умолчанию TsBr..


PS
По умолчанию TsBrowse всегда выводит тексты в 1-ый Item StatusBar.
Если вы это используете, то для др. своих текстов исп. Item > 1 или для TsBrowse назначаете другой Item или отключаете вывод, как показано выше

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 7182
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 22.04.20 11:32. Заголовок: SergKis При чем тут..


SergKis
При чем тут 1 итем если у него по клаве все работает ?

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 3135
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 22.04.20 15:44. Заголовок: Dima пишет При чем т..


Dima пишет
 цитата:
При чем тут 1 итем если у него по клаве все работает ?


:DrawSelect() имеет
 
If ::lCellBrw
cMsg := If( ! Empty( ::AColumns[ ::nCell ]:cMsg ), ::AColumns[ ::nCell ]:cMsg, ::cMsg )
cMsg := If( ValType( cMsg ) == "B", Eval( cMsg, Self, ::nCell ), cMsg )

If ! Empty( cMsg )
::SetMsg( cMsg )

EndIf
EndIf

:Edit() имеет безусловное
::SetMsg( oCol:cMsgEdit )
и т.д., т.е. имеем срабатывание вывода текста, по умолчанию, в 1-ый Item StatusBar, в том числе и от действий мыши


Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 3136
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 22.04.20 15:50. Заголовок: PS Т.е. хочешь сам п..


PS
Т.е. хочешь сам полностью управлять отображением в StatusBar, отключай TsBrowse :nStatusItem := 0
и делай свои выводы, очистки в StatusBar как хочешь. Если не ноль, то тсб будет лезть со своим (алгоритмом) вывода,
тогда просто расходишься с тсб по разным Item StatusBar :nStatusItem := 2, а свои другие в Item 1, например

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 151
Зарегистрирован: 12.07.06
ссылка на сообщение  Отправлено: 22.04.20 18:25. Заголовок: Спасибо за помощь :s..


Спасибо за помощь
Чтобы не лезть в TBrowse добавил в статусбар на первую позицию пустышку
и вывожу во второй Item.
Все работает!

DEFINE STATUSBAR FONT 'Times New Roman' SIZE 10 BOLD
STATUSITEM '' FLAT
STATUSITEM '' WIDTH w_br FLAT
STATUSITEM '' WIDTH w_br FLAT
END STATUSBAR

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 3137
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 22.04.20 19:49. Заголовок: alex_II пишет Чтобы ..


alex_II пишет
 цитата:
Чтобы не лезть в TBrowse добавил в статусбар на первую позицию пустышку


В TsBrowse лазить не надо, делаете
 
DEFINE TBROWSE oBrw
:nStatusItem := 0 // или
oBrw:nStatusItem := 0
END TBROWSE

отключили вывод из TsBrowse

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 335
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет