Текущее время: Вс, авг 03 2025, 02:22

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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