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

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

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

ShIvADeSt (31-12-2009 04:49): Продолжаем тут http://forum.ru-board.com/topic.cgi?forum=33&topic=10884  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

   

golkanavt



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

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




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

Всего записей: 1069 | Зарегистр. 08-04-2002 | Отправлено: 10:31 07-02-2009 | Исправлено: vladman, 14:36 24-10-2009
f3ka

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
clear2121
для реализации того что хочется надо у cxTreeList'а установить свойство ImageList в котором необходимые картинки для узлов листа... при заполнении листа узлами надо прописывать у узлов свойства ImageIndex, SelectedIndex и StateIndex необходимые для поставленной задачи...

Всего записей: 497 | Зарегистр. 02-03-2007 | Отправлено: 08:53 30-06-2009
clear2121



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
f3ka,
я так и делаю, но это глобально на всю строчку. А у меня мысль именно в колонке показать картинку. В проекте 2 колонки будут с картинками, которые отвечают за разные действия. Вот как это сделать?
Пробую так:

Код:
 
TcxTreeListNode *MR = G2->Nodes->Root->AddChild();
MR->Values[0]  = IL->GetImage...;
MR->Values[1]  = "";
MR->Values[2]  = IL->GetImage(...;
 

А как получить картинку в ИМАДЖЛИСТ (IL)?
 
 
И как определить, что я по этой колонке КЛИКНУЛ? Что то тоже не получается.
СПАСИБО ЗА ПОМОЩЬ!!!

Всего записей: 311 | Зарегистр. 07-04-2005 | Отправлено: 11:32 30-06-2009 | Исправлено: clear2121, 11:40 30-06-2009
JohnSilver182



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Hi All
А вот  когда  после запроса cxGrid сортирует колонки ,  то курсор  у DATASET стоит  на первой записи   и  поэтому  можно увидеть  середину или   конец  таблицы .  
 
А как  сказать  cxGrid что бы показал сначала ?

Всего записей: 829 | Зарегистр. 03-06-2009 | Отправлено: 14:09 30-06-2009
jicoff

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
JohnSilver182
 
GridView->ViewData->Rows[0]->Focused = true;
 
Добавлено:
clear2121
 
Как-то так:
 
Graphics::TBitmap *image;
 
image->LoadFromStream(...);
image->TransparentMode = tmAuto;
image->Transparent = true;
ImageList->AddMasked(image, image->TransparentColor);

Всего записей: 289 | Зарегистр. 03-03-2006 | Отправлено: 17:13 30-06-2009
JohnSilver182



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
jicoff
Спасибо ,  жаль что я   аналога  в  Дезайнере  не нашел .

Всего записей: 829 | Зарегистр. 03-06-2009 | Отправлено: 18:13 30-06-2009
volser

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
clear2121
 
Для этих целей можно использовать Properties для колонки ImageComboBox. Если не нужно редактировать установить свойство ReadOnly.

Всего записей: 713 | Зарегистр. 31-03-2006 | Отправлено: 22:31 30-06-2009
clear2121



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
volser
СПАСИБИЩЕ!!! Получилось как надо!
Теперь всплыл другой вопрос - а как менять эту картинку программно. В ИДЕ для TcxTreeListColumn в свойстве Проперти есть свойство DefaultImageIndex. А вот программно как к нему долезть не знаю.
Пока копаю в сторону

Код:
 
TcxTreeListNode *MR = G2->Nodes->Root->AddChild();
MR->Values[0]   -  а тут не знаю что добавить
 

Кто знает, подскажите, ПЛЗ!
СПАСИБО ЗА ПОМОЩЬ!

Всего записей: 311 | Зарегистр. 07-04-2005 | Отправлено: 10:27 01-07-2009
f3ka

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

Цитата:
В ИДЕ для TcxTreeListColumn в свойстве Проперти есть свойство DefaultImageIndex. А вот программно как к нему долезть не знаю.  

ну наверно приведением типов Properties

Код:
TcxImageComboBoxProperties(<YourColumnName>.Properties).DefaultImageIndex


Всего записей: 497 | Зарегистр. 02-03-2007 | Отправлено: 10:48 01-07-2009
volser

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
clear2121
DefaultImageIndex это немного не то. Что бы все работало нужно заполнить следующие свойства Properties. Images - список картинок. Items - указать Value, ValueType, Image. Теперь в зависимости от значения в колонке (Values[]) будет отображаться соответствующая картинка.

Всего записей: 713 | Зарегистр. 31-03-2006 | Отправлено: 10:58 01-07-2009
clear2121



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
f3ka,
<YourColumnName> распространяется на всю колонку, а я хотел бы толко на строчку. Пока не могу найти.  
СПАСИБО ЗА УЧАСТИЕ!
 
 
Добавлено:
volser
СПАСИБИЩЕ!!! ВСЕ ПОЛУЧИЛОСЬ КАК НАДО!
Может ты ещё знаешь как поймать, что пользователь кликнул по этой колонке?  
НУ СПАСИБО!

Всего записей: 311 | Зарегистр. 07-04-2005 | Отправлено: 11:12 01-07-2009
volser

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

Цитата:
..пользователь кликнул по этой колонке?

 
Это где? Заголовок или ячейка?

Всего записей: 713 | Зарегистр. 31-03-2006 | Отправлено: 11:20 01-07-2009
JohnSilver182



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А вобще   правильно делать cxLookupComboBox  для поиска справочника  в  100 000  позиций ??
 
Юзер  как  набирает 3-буквы ,  я  обновляю РекордСет   : where Поле Like 'ABC% '   что бы  LOCATE   не бегал  по  100 000   записей .  
 
Только после обновления  РекордСет ,  список  выпадает  из ОДНОЙ строки .  Надо еще одну букву ввсети , тогда выпадает нормально .
СНошался  долго , помогло только GridMode=true;

Всего записей: 829 | Зарегистр. 03-06-2009 | Отправлено: 11:22 01-07-2009
afiget



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

Цитата:
А вобще   правильно делать cxLookupComboBox  для поиска справочника  в  100 000  позиций ?

А сам как думаешь?
Вот открыл ты список, в ползунок скролинга можешь мышкой попасть?
 
Минимум - листбокс. Максимум - отдельная форма с возможностью фильтрации и поиска на месте.

Всего записей: 545 | Зарегистр. 31-12-2005 | Отправлено: 11:28 01-07-2009
volser

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

Цитата:
А вобще   правильно делать cxLookupComboBox  для поиска справочника  в  100 000  позиций ??  

 
Лучше так не делать. Чтобы использовать лукап желательно что бы записей было не больше 50. Для большого количества записей лучше использовать отдельную форму в которой находится грид и панель фильтрации.

Всего записей: 713 | Зарегистр. 31-03-2006 | Отправлено: 11:29 01-07-2009
clear2121



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
volser,
прости не уточнил - ячейке. У меня CellSelect = false, поэтому выделение идет всей строки. И если я кликаю на ячейку с рисунком (да вообще любую), то ничего не происходит.

Всего записей: 311 | Зарегистр. 07-04-2005 | Отправлено: 11:34 01-07-2009
volser

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
clear2121
На событие OnClick листа повесь следующий код
 

Код:
 
var
  AHitTest: TcxTreeListHitTest;
begin
  AHitTest := TcxTreeList(Sender).HitTest;
 
  if Assigned(AHitTest) then
    with AHitTest do
      if HitAtColumn and (HitAtNode or HitAtNodePreview) then
        ShowMessage('Ok');
end;
 

Всего записей: 713 | Зарегистр. 31-03-2006 | Отправлено: 11:37 01-07-2009
clear2121



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
volser?
ВЫРУЧИЛ!!! СПАСИБО!!!
Захотелось сделать красиво. СДЕЛАЛ!
БЛАГОДАРЮ!!!  
 
 
 
Добавлено:
Подскажите!
Хочу с помощью TcxTreeList сделать отображение текстовых данных наподобие чата. ЧТоб, если много инфы, то строка растягивалась для вмещения этой инфы. Но на других строках это не отражалось. Возможно это? Думаю использовать поле типа РичЕдит.  
Может кто то порекомендует что то ещё?
СПАСИБО!

Всего записей: 311 | Зарегистр. 07-04-2005 | Отправлено: 12:10 01-07-2009
data man



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
clear2121
Может использовать событие Column.GetEditProperties (или GetEditingProperties) ?

Всего записей: 1696 | Зарегистр. 13-10-2005 | Отправлено: 13:26 01-07-2009
volser

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
clear2121
У листа есть свойство Preview. Если же нужно что бы обычная строка растягивалась по высоте, то свойство OptionsView.CellAutoHeight.

Всего записей: 713 | Зарегистр. 31-03-2006 | Отправлено: 13:37 01-07-2009
Roma4ke

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
помогите разобраться. использую сxGrid. функции GetFieldByName() нету. как можно заносить данные в поля по имени.  
спасибо.

Всего записей: 21 | Зарегистр. 24-06-2009 | Отправлено: 15:00 01-07-2009
   

Страницы: 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

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Использование DevExpress (часть 3)
ShIvADeSt (31-12-2009 04:49): Продолжаем тут http://forum.ru-board.com/topic.cgi?forum=33&topic=10884


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru