Текущее время: Сб, авг 02 2025, 23:41

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 10 ] 
Автор Сообщение
 Заголовок сообщения: Double click в cl_gui_alv_tree
СообщениеДобавлено: Пн, июн 04 2007, 14:45 
Старший специалист
Старший специалист

Зарегистрирован:
Пт, фев 03 2006, 08:00
Сообщения: 344
каким образом можно вытащить события двойного клика на элементе в дереве? если использовать варианты из примеров, то при
Code:
  call method tree1->set_registered_events
         exporting     events = t_events
        exceptions CNTL_ERROR = 1
            CNTL_SYSTEM_ERROR = 2
    ILLEGAL_EVENT_COMBINATION = 3.

узлы перестают развертываться при клике "на стрелке" :roll:


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, июн 04 2007, 15:01 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
какую стрелку Вы имеете ввиду?
Развертывания нода или ту что в заголовке?

Этот вариант работает, надо код видимо смотреть.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Double click в cl_gui_alv_tree
СообщениеДобавлено: Пн, июн 04 2007, 15:07 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
aht написал(а):
каким образом можно вытащить события двойного клика на элементе в дереве? если использовать варианты из примеров, то при
Code:
  call method tree1->set_registered_events
         exporting     events = t_events
        exceptions CNTL_ERROR = 1
            CNTL_SYSTEM_ERROR = 2
    ILLEGAL_EVENT_COMBINATION = 3.

узлы перестают развертываться при клике "на стрелке" :roll:

А чем собственно заполняется t_events[]?
Code:

_________________
"После" - не значит "вследствие"


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Double click в cl_gui_alv_tree
СообщениеДобавлено: Пн, июн 04 2007, 15:18 
Старший специалист
Старший специалист

Зарегистрирован:
Пт, фев 03 2006, 08:00
Сообщения: 344
стрелка, которая на узлах 0-го уровня :(
события заполняются:
Code:
  l_event-eventid = CL_GUI_COLUMN_TREE=>EVENTID_ITEM_DOUBLE_CLICK.
  l_event-appl_event = ''.
append l_event to t_events.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Double click в cl_gui_alv_tree
СообщениеДобавлено: Пн, июн 04 2007, 15:24 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
Хм, у моих деревьев:
Code:
  l_event-appl_event = 'X'.

_________________
"После" - не значит "вследствие"


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, июн 04 2007, 15:26 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
аналогично


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, июн 04 2007, 15:34 
Старший специалист
Старший специалист

Зарегистрирован:
Пт, фев 03 2006, 08:00
Сообщения: 344
ну я пробовал ставить Х, всё тоже :(
а вы объявляете события в отдельно инклюде, т.е. прописываете класс с методом двойного клика:
Code:
CLASS LCL_APPLICATION DEFINITION.
  PUBLIC SECTION.
    METHODS:
      HANDLE_NODE_DOUBLE_CLICK
        FOR EVENT NODE_DOUBLE_CLICK
        OF CL_GUI_COLUMN_TREE
        IMPORTING NODE_KEY,
...

а в топовом инклюде:
Code:
CLASS LCL_APPLICATION DEFINITION DEFERRED.
CLASS CL_GUI_CFW DEFINITION LOAD.

:?:


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, июн 04 2007, 15:49 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пн, апр 17 2006, 11:03
Сообщения: 123
я бы попробовал сделать

Code:
l_event-appl_event = 'X'.


а в паях вызов

Code:
cl_gui_cfw=>dispath


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, июн 04 2007, 16:03 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
aht написал(а):
ну я пробовал ставить Х, всё тоже :(
а вы объявляете события в отдельно инклюде, т.е. прописываете класс с методом двойного клика:
Code:
CLASS LCL_APPLICATION DEFINITION.
  PUBLIC SECTION.
    METHODS:
      HANDLE_NODE_DOUBLE_CLICK
        FOR EVENT NODE_DOUBLE_CLICK
        OF CL_GUI_COLUMN_TREE
        IMPORTING NODE_KEY,
...

+
Code:
* assign event handlers in the application class to each desired event
    set handler G_APPLICATION->HANDLE_NODE_DOUBLE_CLICK for G_TREE.

где
Code:
data: G_APPLICATION      type ref to LCL_APPLICATION.

_________________
"После" - не значит "вследствие"


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, июн 04 2007, 16:07 
Старший специалист
Старший специалист

Зарегистрирован:
Пт, фев 03 2006, 08:00
Сообщения: 344
вот, блин, косяк, добавил ещё:
Code:
  l_event-eventid = CL_GUI_COLUMN_TREE=>EVENTID_EXPAND_NO_CHILDREN.
  l_event-appl_event = 'X'.
  append l_event to t_events.

и вроде заработало :shock:


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 10 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB