CftClub.ru
Клуб специалистов ЦФТ-Банк

Хинт по содержимому ячейки GRIDa
На страницу 1, 2  След.
 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Справочник PL/PLUS: Функции, примеры, приёмы
Предыдущая тема :: Следующая тема  
Автор Сообщение
Трактор
Участник со стажем


Вступление в Клуб: 20.02.2012
СообщениеВт Мар 20, 2012 13:43   Хинт по содержимому ячейки GRIDa Ответить с цитатой
Полезность: Нет оценки
Кто-нить делал так, чтоб при наведении мыши на ячейку в гриде всплывал бы хинт с текстом из ячейки?
Random
Эксперт


Вступление в Клуб: 27.06.2011
СообщениеВт Мар 20, 2012 14:20   Re: Хинт по содержимому ячейки GRIDa Ответить с цитатой
Полезность: Нет оценки
Трактор пишет:
Кто-нить делал так, чтоб при наведении мыши на ячейку в гриде всплывал бы хинт с текстом из ячейки?


Я делал эмуляцию хинта по двойному клику мышки.

Для этого взял MEMO-поле, разместил невидимым поверх всех элементов формы, цвет фона сделал светло-желтым, и обработал событие двойного клика по ячейке грида для отображения содержимого ячейки, а по всем прочим событиям прятал MEMO.

Собственно хинт же существует только для всего грида в целом, и событий OnMouseOver, OnMouseOut в АРМах нет.
Трактор
Участник со стажем


Вступление в Клуб: 20.02.2012
СообщениеСр Мар 21, 2012 12:30   Re: Хинт по содержимому ячейки GRIDa Ответить с цитатой
Полезность: Нет оценки
Random пишет:

Я делал эмуляцию хинта по двойному клику мышки.


Можно кусок кода ?
Random
Эксперт


Вступление в Клуб: 27.06.2011
СообщениеЧт Мар 22, 2012 06:31   Re: Хинт по содержимому ячейки GRIDa Ответить с цитатой
Полезность: 1
Трактор пишет:
Random пишет:

Я делал эмуляцию хинта по двойному клику мышки.


Можно кусок кода ?


1. Создаем форму с гридом, обзываем его G_TEXT, свойство CheckValidate выставляем в true. У каждой колонки выставляем свойство Enabled = false (это не обязательно)
2. Прямо поверх грида шлёпаем строку, кнопкой F5 конвертируем в многостроковое мемо-поле. Обзываем его M_STRING, свойство Visible выставляем в false
3. Закрываем ЭФ, переходим к VB-Script. Там пишем:
Код:

Public Function Main(LastControl)
   If LastControl Is Nothing Then
      M_STRING.BackColor = 13172735
   end if
   Main = true
End Function

Public Sub G_TEXT_OnDblClick(Row, Col)
   if G_TEXT.Text(Row,Col) <> "" then
      M_STRING.Text = G_TEXT.Text(Row,Col)
      M_STRING.Visible = true
   end if
end sub

Sub G_TEXT_RowColChange
   M_STRING.Visible = false
end sub

sub Form1_OnControlFocus(Control, GotIt )
   if not GotIt then
      if Control is M_STRING then
         M_STRING.Visible = false
      end if
   end if
end sub

Вот что-то типа.
Трактор
Участник со стажем


Вступление в Клуб: 20.02.2012
СообщениеЧт Мар 22, 2012 07:03   Re: Хинт по содержимому ячейки GRIDa Ответить с цитатой
Полезность: Нет оценки
Random пишет:

Вот что-то типа.


Спасибо.
Вот бы ещё понять как доступиться из скрипта до свойства HINT грида.
Тогда можно не извращаться с дополнительным полем.
Random
Эксперт


Вступление в Клуб: 27.06.2011
СообщениеЧт Мар 22, 2012 08:26   Re: Хинт по содержимому ячейки GRIDa Ответить с цитатой
Полезность: Нет оценки
Трактор пишет:
Random пишет:

Вот что-то типа.


Спасибо.
Вот бы ещё понять как доступиться из скрипта до свойства HINT грида.
Тогда можно не извращаться с дополнительным полем.


А чем тебе это поможет?
Трактор
Участник со стажем


Вступление в Клуб: 20.02.2012
СообщениеЧт Мар 22, 2012 09:08   Re: Хинт по содержимому ячейки GRIDa Ответить с цитатой
Полезность: Нет оценки
Random пишет:


А чем тебе это поможет?


напишу чо-нить типа такого:

Код:
Sub B_GRID_BeforeEdit(Row,Col,Cancel)
   if B_GRID.Text(Row,Col) <> ""  then
     B_GRID.Hint = B_GRID.Text(Row,Col)
   end if
end sub


Хинт будет всплывать при нажатии
Random
Эксперт


Вступление в Клуб: 27.06.2011
СообщениеЧт Мар 22, 2012 10:09   Re: Хинт по содержимому ячейки GRIDa Ответить с цитатой
Полезность: Нет оценки
Трактор пишет:
Random пишет:

А чем тебе это поможет?

...
Хинт будет всплывать при нажатии


Хинт всплывает не при нажатии, наоборот, при нажатии хинт исчезает.

Но можешь поиграть со свойством ToolTipText

Хотя лично я вижу в этом мало выгоды.

Тултип (хинт) вылезет, когда мышка остановится, причём на любой ячейке грида, как бы отображая подсказку именно этой ячейки, на которой остановилась стрелка мыши. Пользователь, привыкший к определенному поведению хинта в других программах, может и спутаться.

Такое поведение будет сбивать с толку. Предпочитаю в этом случае сделать функционал так, чтобы сразу было понятно, что тут что-то другое и от пользователя требуется действовать по другому шаблону.
Трактор
Участник со стажем


Вступление в Клуб: 20.02.2012
СообщениеЧт Мар 22, 2012 10:44   Re: Хинт по содержимому ячейки GRIDa Ответить с цитатой
Полезность: Нет оценки
Random пишет:

Но можешь поиграть со свойством ToolTipText
Хотя лично я вижу в этом мало выгоды.


свойство ToolTipText - в скрипте недоступно
lexus
Профи


Вступление в Клуб: 28.09.2007
СообщениеЧт Мар 22, 2012 10:45   Re: Хинт по содержимому ячейки GRIDa Ответить с цитатой
Полезность: Нет оценки
Random пишет:
Трактор пишет:
Random пишет:

А чем тебе это поможет?

...
Хинт будет всплывать при нажатии

Тултип (хинт) вылезет, когда мышка остановится, причём на любой ячейке грида, как бы отображая подсказку именно этой ячейки, на которой остановилась стрелка мыши. Пользователь, привыкший к определенному поведению хинта в других программах, может и спутаться.


Думаю, в данном случае (грид в ЦФТ), это как раз удобно.
Ячейки обычно узкие, целиком их значение не видно. Вот в представлениях тултип так себя и ведет сейчас: наводишь на ячейку, видишь ее значение полностью.
В гридах на ЭФ это тоже было бы даже логично.
Трактор
Участник со стажем


Вступление в Клуб: 20.02.2012
СообщениеЧт Мар 22, 2012 12:10   Re: Хинт по содержимому ячейки GRIDa Ответить с цитатой
Полезность: Нет оценки
lexus пишет:
целиком их значение не видно. Вот в представлениях тултип так себя и ведет сейчас: наводишь на ячейку, видишь ее значение полностью.
В гридах на ЭФ это тоже было бы даже логично.


Ага, было бы.
Они даже до свойства ToolTipText не дают в скрипте доступиться.
Гадынемцы Sad
Random
Эксперт


Вступление в Клуб: 27.06.2011
СообщениеПт Мар 23, 2012 05:52   Re: Хинт по содержимому ячейки GRIDa Ответить с цитатой
Полезность: Нет оценки
lexus пишет:
Думаю, в данном случае (грид в ЦФТ), это как раз удобно.
Ячейки обычно узкие, целиком их значение не видно. Вот в представлениях тултип так себя и ведет сейчас: наводишь на ячейку, видишь ее значение полностью.
В гридах на ЭФ это тоже было бы даже логично.


Это понятно, что удобно. Только не реализовано.
Random
Эксперт


Вступление в Клуб: 27.06.2011
СообщениеПт Мар 23, 2012 05:53   Re: Хинт по содержимому ячейки GRIDa Ответить с цитатой
Полезность: Нет оценки
Трактор пишет:
Random пишет:

Но можешь поиграть со свойством ToolTipText
Хотя лично я вижу в этом мало выгоды.


свойство ToolTipText - в скрипте недоступно


Да, действительно, у грида свойство ToolTipText из скрипта недоступно.
А у колонки доступно, но без реакции.
Не помог, значит.
Трактор
Участник со стажем


Вступление в Клуб: 20.02.2012
СообщениеПт Мар 23, 2012 07:41   Re: Хинт по содержимому ячейки GRIDa Ответить с цитатой
Полезность: Нет оценки
Random пишет:

Да, действительно, у грида свойство ToolTipText из скрипта недоступно.
А у колонки доступно, но без реакции.
Не помог, значит.


у кого-нить есть описалово свойств и методов для колонки?
Alexsey
Эксперт


Вступление в Клуб: 06.09.2007
СообщениеПт Мар 23, 2012 08:37   Re: Хинт по содержимому ячейки GRIDa Ответить с цитатой
Полезность: Нет оценки
Трактор пишет:
Random пишет:

Да, действительно, у грида свойство ToolTipText из скрипта недоступно.
А у колонки доступно, но без реакции.
Не помог, значит.


у кого-нить есть описалово свойств и методов для колонки?

У меня есть пара документов по Гридам в ЦФТ, но правилами клуба запрещено ее выкладывать Crying or Very sad
давайте почту я поделюсь.
_________________
всегда есть как минимум 2 выхода
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Справочник PL/PLUS: Функции, примеры, приёмы Часовой пояс: GMT + 3
На страницу 1, 2  След.
Страница 1 из 2

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Рейтинг@Mail.ru