Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Использование DevExpress 2

Модерирует : ShIvADeSt

ShIvADeSt (07-02-2009 14:53): Продолжаем тут
http://forum.ru-board.com/topic.cgi?forum=33&topic=10123#1
 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122

   

ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
DevExpress

Обмен опытом, обсуждение нюансов и решение проблем возникающих при использовании библиотеки компонент Developer Express




 
Сами прирученные компоненты частенько приходят на водопой сюда
 
DLL со скинами из библиотеки dxSkins, автор Ziltoid Подробнее... линк обновлен
Продолжение, начало тут
 

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 03:16 29-01-2007 | Исправлено: VitaliM, 15:47 24-11-2008
golkanavt



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Кстати, читая об изменениях в поведении грида со сменой версии вспомнил о своей проблеме - на форме лежит TabSheet с кучей табов, практически на каждом из них есть тулбары с хоткеями, наиболее актуальный из них - добавление записей по Insert. Работало все замечательно, в зависимости от активного sheet срабатывал нужный Action по этому хоткею. Несколько месяцев назад это точно работало, когда я как разработчик приложения принимал участие в работе отдела и сам вносил данные. Затрудняюсь сказать, на какой версии механизм сломался, и теперь вне зависимости от активной вкладки срабатывает Action самой первой, что не есть гуд, особенно теперь, когда операторы приложения научились работать с хоткеями и для ускорения обработки информации хотят делать все с клавиатуры. Сталкивался ли кто либо с этой проблемой и как ее решать?
 
Добавлено:
Текущая версия Dev - DevExpr_11_sep_2007

Всего записей: 1069 | Зарегистр. 08-04-2002 | Отправлено: 16:04 23-11-2007
korobovmax



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
golkanavt, можно сделать один Action с желаемым хоткеем.
В нем сделать обработку:
case TabSheet.ActivePageIndex of
  0: <ActionInsert0>.Execute;
  ...  
  N: <ActionInsertN>.Execute;
end;
 
Самый просто механизм

Всего записей: 276 | Зарегистр. 23-01-2005 | Отправлено: 17:04 23-11-2007
golkanavt



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
korobovmax
Сделать то можно, только мне непонятно, почему такие изменения в поведении компонент, чем это оправдано? Этак при каждом апдейте девок придется весь новый билд софта перелопачивать на предмет подобных "усовершенствований", ведь работало все нормально и тут нате.

----------
Shit happens...

Всего записей: 1069 | Зарегистр. 08-04-2002 | Отправлено: 17:43 24-11-2007
korobovmax



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
golkanavt, я не знаю, какой у тебя обработчик стоит.
Мое решение - независимо от версий

Всего записей: 276 | Зарегистр. 23-01-2005 | Отправлено: 20:56 24-11-2007
ivyanushkevich

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть такая проблема.  
 
Начальные условия:
1. Грид работает в unbound mode (заполняю ручками).
2. Сортировки отключены.  
3. В грид залито примерно 60 000 строк.
 
Что делает пользователь:
1. использует popup фильтры, группировки
2. меняет значение одного поля с 1 на 0 и наоборот.
 
Какие возникают проблемы:
1. Если не использовать фильтры и группировки, то изменение значения поля происходит моментально. если же стоит фильтр, то изменение одного значения занимает до 3 сек. - это дофига.  
Как я понял, грид в это время занимается перестройкой фильтров и сортировкой. Зачем - непонятно, т.к. ни в сортируемых, ни в отфильтрованых колонках ничего не поменялось.  
2. Грид каждый раз при открытии попап фильтра заново его считывает - занимает секунды три. Опять же непонятно зачем - никаких изменений в фильтруемые поля не вносилось.  
 
Код изменения одного значения:
 
  Sender.DataController.BeginUpdate;
  Sender.DataController.Filter.BeginUpdate;
  try
    s := '';
    t1 := time;
    if (ACellViewInfo.Item.Tag >0) and (ACellViewInfo.DisplayValue <> null) then begin
      rl := TRightsLine(Integer(RightsGrid.DataController.Values[RightsGrid.DataController.FocusedRecordIndex,0]));
      Right := rl.ObjectType.RightsById[ACellViewInfo.Item.Tag];
      if Right.Value = 0 then
        Right.Value := 1
      else
        Right.Value := 0;
    end;
  finally
    RightsGrid.DataController.Filter.CancelUpdate;
    RightsGrid.DataController.EndUpdate; // !!! вот эта операция занимает 3 секунды, все остальное проходит мгновенно
  end;
 
 
Вопросы:
 
1. Как можно отключить постоянное построение фильтров?
2. Как при изменении значения обойти задержку на EndUpdate?

Всего записей: 5 | Зарегистр. 08-11-2005 | Отправлено: 17:57 25-11-2007
Dronton2

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ivyanushkevich
Не уверен, что получится, но можно попробовать TcxCustomDataController.BeginUpdateFields
либо для фильтруемых полей, либо для обновляемых вместо DataController.BeginUpdate.
Не уверен я в итоговом результате, т.к. непонятно, что делает датаконтроллер при получении нотификации об изменении значения поля.

Всего записей: 460 | Зарегистр. 27-06-2005 | Отправлено: 10:18 26-11-2007
brookson



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
всем привет.
 
в обычном лукапном дб комбо можно было указать List Sourse, List field и Lisk key field, не указывая DataSouse, Datafield.
и тогда в нём можно было просто отобразить выбранное значение.
скажите, как настроить (не сомневаюсь, что можно) cxDbLookupComboBox, чтоб тоже показывал значение Listfield.
пока не получается

Всего записей: 139 | Зарегистр. 06-09-2007 | Отправлено: 11:27 26-11-2007 | Исправлено: brookson, 11:28 26-11-2007
Dronton2

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
brookson
Используй OnGetDisplayText.
Но, если используешь cxDbLookupComboBox, то лучше указывать DataSource, иначе нет смысла его использовать.

Всего записей: 460 | Зарегистр. 27-06-2005 | Отправлено: 11:46 26-11-2007
X11



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
всем привет.
 
в обычном лукапном дб комбо можно было указать List Sourse, List field и Lisk key field, не указывая DataSouse, Datafield.
и тогда в нём можно было просто отобразить выбранное значение.
скажите, как настроить (не сомневаюсь, что можно) cxDbLookupComboBox, чтоб тоже показывал значение Listfield.
пока не получается  

 
Тоже БЫЛА такая проблема, пока не подсказали здесь же, что в обычном (НЕ DB) выпадающем списке cxLookupComboBox тоже есть listsource и всё остальное

Всего записей: 3253 | Зарегистр. 24-11-2005 | Отправлено: 12:58 26-11-2007 | Исправлено: X11, 15:59 26-11-2007
brookson



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
<b>Dronton2</b>
 
получилось с cxLookupComboBox! забыл, что есть такое чудо. и там всё, как я хотел.

Всего записей: 139 | Зарегистр. 06-09-2007 | Отправлено: 16:24 26-11-2007
IgorXI



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите как из редактируемого поля, инкапсулированого в TdxBar, можно передать фокус любому другому контролу, используя клавиатуру, как не пробовал, бесполезно, фокус остаётся в том же редактируемом поле и табуляцией их обойти тоже нельзя.

Всего записей: 126 | Зарегистр. 16-09-2003 | Отправлено: 11:16 27-11-2007
Dronton2

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
IgorXI
Попробуй OnKeyPress или OnKeyUp

Всего записей: 460 | Зарегистр. 27-06-2005 | Отправлено: 14:06 27-11-2007
yuish

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как программно перейти на нужную запись в DbTreeList, зная id записи в базе (в treelist данное поле есть)

Всего записей: 218 | Зарегистр. 10-02-2003 | Отправлено: 12:39 28-11-2007
Dronton2

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
yuish
Dataset.Locate - при перемещении курсора по таблице, автоматически синхронизируется TcxDBTreeList.

Всего записей: 460 | Зарегистр. 27-06-2005 | Отправлено: 12:59 28-11-2007
drunk2



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Кто нибудь сделал инкрементальный поиск/подсветку как firefox?

У меня апрельские девки, в новых есть изменения в этом плане?

Всего записей: 204 | Зарегистр. 27-10-2005 | Отправлено: 13:45 28-11-2007
Dronton2

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
drunk2

Цитата:
Кто нибудь сделал инкрементальный поиск/подсветку как firefox?

В новых девках изменений на эту тему нет. Кроме тебя, похоже, никто не сталкивался с требованиями подсветки типа "подсветить все".
Попробуй OnCustomDrawCell или покопайся в исходниках, они ведь как-то подсвечивают одну ячейку.

Всего записей: 460 | Зарегистр. 27-06-2005 | Отправлено: 15:05 28-11-2007
Legion



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
uazero
У меня такая же фигня и в 28-й и в 29-й, откатился на 27-ю (август).  

Всего записей: 159 | Зарегистр. 23-09-2003 | Отправлено: 15:56 28-11-2007
IgorXI



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Dronton2
Бесполезно, ни в одном из событий  
OnKey Down
OnKeyPress  
OnKeyUp
не удаётся передать фокус на контрол формы
 

Всего записей: 126 | Зарегистр. 16-09-2003 | Отправлено: 06:30 29-11-2007
clear2121



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Hi!
Подскажите, есть в Девках компонент типа LookUpComboBox, что при раскрытии списка там было дерево? И как зовется?
 
СПАСИБО
 
Добавлено:
Hi!
Подскажите, есть в Девках компонент типа LookUpComboBox, что при раскрытии списка там было дерево? И как зовется?
 
СПАСИБО

Всего записей: 311 | Зарегистр. 07-04-2005 | Отправлено: 10:28 29-11-2007
drunk2



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
clear2121
Нет такого, используй TreeList+PopupEdit

Всего записей: 204 | Зарегистр. 27-10-2005 | Отправлено: 11:33 29-11-2007
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Использование DevExpress 2
ShIvADeSt (07-02-2009 14:53): Продолжаем тут
http://forum.ru-board.com/topic.cgi?forum=33&topic=10123#1


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru