AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 27.02.2003, 10:09   #21  
Андре is offline
Андре
Moderator
Сотрудники компании GMCS
 
2,375 / 464 (20) +++++++
Регистрация: 03.12.2001
И опять приложить проект забыл.
Вложения
Тип файла: xpo dem_tst5 (1).xpo (9.0 Кб, 411 просмотров)
Старый 27.02.2003, 10:28   #22  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
Цитата:
Изначально опубликовано Андре
В executeQuery() мы определяем количество записей в таблице(забудем пока про производительность и оптимальность и попробуем просто понять принцип работы) и добавляем первые 20 записей в таблицу:
...
Перекрываем textChange() у контрола, который привязан к таблице:
...
Я, вообще-то, не совсем так думал. Я думал, что надо заполнить все ячейки какой-нибудь служебной инфой... В нее запаковать, то что тебе потом будет надо. А textChange обрабатывать только в том случае, если текущая ячейка как раз таким служебным текстом будет заполнена. Нет времени прямо сейчас попробовать твою форму поправить. Постараюсь до вечера...

Цитата:
Изначально опубликовано Андре
Если же пользователь начинает скролировать таблицу, то часто получается ситуация, когда пользователь начинает видеть пустые незаполненные строки.. в общем сам увидишь.
Щас посмотрю...

Цитата:
Изначально опубликовано Андре
Кроме того, textChange() будет вызываться даже тогда, когда пользователь начнет перемещаться по таблице вверх
ИМХО, проблема решиться, если делать так, как я выше написал.

Цитата:
Изначально опубликовано Андре
Можно сделать следующее(только что пришло в голову) - выбросить из таблицы скролбар(раз им все равно пользоваться нельзя), а в замен попробовать подсунуть пользователю что нибудь другое...
Жалко, если придется делать так. Хотелось бы, чтобы пользователь подмены не заметил... Ну, или почти не заметил.
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 03.03.2003, 08:51   #23  
Андре is offline
Андре
Moderator
Сотрудники компании GMCS
 
2,375 / 464 (20) +++++++
Регистрация: 03.12.2001
Привет.

Цитата:
На черный день у нас есть ActiveX. Как еще один вариант, можно попробовать написать свой ActiveX контрол на обычном языке программирования и использовать его в Аксапте.
Возвращаясь к этому замечанию, а что ты думаешь насчет ActiveX ?

Вот смотри, к сообщению приложен ActiveX(аналог Table в первом приблищении) и еще одна формочка с МИНИМУМОМ кода:

PHP код:
void clicked()
{
    
sg.RowCount(100);
    
sg.SetCellValue(1,1,"Hello");

Здесь я устанавливаю количество строк и в определенную ячейку вывожу значение. Точно также можно динамически увеличить количество столбцов. И не надо создавать дополнительные контролы, как это приходилось делать в Table. Не надо динамически создавать методы.

Поехали дальше:

PHP код:
void onEvent_OnTopLeftChanged()
{
   
st.text(int2str(sg.MaxVisibleRow()));

Это на ActiveX перекрыто событие. Событие вызывается каждый раз, когда изменяется левый верхний видимый угол в таблице. То есть, повесившись на него мы обрабатываем скролирование. Добавим к этому метод MaxVisibleRow(), который возвращает номер самой нижней отображаемой строки таблицы, за все время существования ее экземпляра. Имее это мы:

1. ГАРАНТИРОВАННО отлавливаем событие скролирования.
2. Определяем В КАКОМ НАПРАВЛЕНИИ происходит это скролирование.
3. Все это работает без той, кучи ужасного кода, который мы имеем при реализации чисто Аксаптовского варианта.

P.S.

1. На написание этого ActiveX я потратил около 20 минут.
2. Этот ActiveX можно существенно расширить, добавив в него, то что нам необходимо. Всего лишь вопрос желания и времени.

P.S. осх-ку нужно сначало зарегистрировать в системе.

Как ты считаешь, насколько реализация в виде ActiveX ограничит использование этого компонента ?
И вообще, кого-нибудь кроме нас это интересует ?
Вложения
Тип файла: zip activex_version.zip (278.6 Кб, 83 просмотров)
Старый 28.09.2003, 19:36   #24  
DSV is offline
DSV
Участник
 
129 / 10 (1) +
Регистрация: 12.06.2003
Адрес: Novocybers
Меня интересует.

Старый 29.09.2003, 17:48   #25  
DSV is offline
DSV
Участник
 
129 / 10 (1) +
Регистрация: 12.06.2003
Адрес: Novocybers
Колитесь, сэр - як в активХэ можно таблицу передать?
Старый 30.09.2003, 16:31   #26  
Андре is offline
Андре
Moderator
Сотрудники компании GMCS
 
2,375 / 464 (20) +++++++
Регистрация: 03.12.2001
Ух ты, какая древняя ветка.

Цитата:
олитесь, сэр - як в активХэ можно таблицу передать?
Никак . У меня же там файл приложен - там должны быть исходники ActiveX. Идея в том, что ActiveX имеет метод, устанавливающий в определенную ячейку таблицы переданное значение. А заполнение происходит из кода X++ - отсюда и ожидаемая гибкость.

А вообще, посмотрите на это - http://www.axforum.info/forums/showt...ighlight=Janus

- ActiveX (Janus GridEX 2000 Control)
Старый 30.09.2003, 18:01   #27  
DSV is offline
DSV
Участник
 
129 / 10 (1) +
Регистрация: 12.06.2003
Адрес: Novocybers
Вызов и сам OCX-ник там есть, но мне очень хочется на исходники именно элемента глянуть.
Плиз&заранее сэнкс.

А как идея использования - ну да, заполнять самому, но зато можно вагон и маленькую тележку вкусностей на отображение наворотить.
Старый 01.10.2003, 09:58   #28  
Андре is offline
Андре
Moderator
Сотрудники компании GMCS
 
2,375 / 464 (20) +++++++
Регистрация: 03.12.2001
Цитата:
Вызов и сам OCX-ник там есть, но мне очень хочется на исходники именно элемента глянуть.
То есть OCX есть, а его исходников нету ? Странно, обычно я всегда исходники выкладываю. Значит забыл. Тогда боюсь ничем не помогу - судя по датам я этим занимался в марте. Сейчас октябрь Исходников у меня не осталось. Но там все просто - этот OCX был написан буквально за 10 минут на Delphi. То есть, я там создал наследника от TStringGrid, добавил в него пару необходимых мне методов и на основе компонента собрал ActiveX.
Теги
table control

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
FormTableControl и сортировка AxDude DAX: Программирование 3 22.08.2007 08:12
Основы работы с FormTableControl PavelSR DAX: Программирование 12 21.09.2006 10:31
FormDataSource sassas DAX: Функционал 13 05.08.2004 17:25
Различные типы связей (LinkType) для FormDataSource Maxim Gorbunov DAX: База знаний и проекты 1 16.05.2004 13:20
Собственный SQL запрос в FormDataSource Alexey DAX: База знаний и проекты 0 20.12.2001 00:35

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 07:13.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.