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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
SIgor33

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вот такой вопросик: есть у меня TcxDBLookupComboBox) при отсутствие записи в словаре занашу туда такой процедурой  
 
procedure TFormDocData.OVDPropertiesNewLookupDisplayText(Sender: TObject;
  const AText: TCaption);
begin
  try
          ((Sender as TcxDBLookupComboBox).Properties.ListSource.DataSet as TMSQuery).ReadOnly:=false;
        ((Sender as TcxDBLookupComboBox).Properties.ListSource.DataSet as TMSQuery).Insert;
        ((Sender as TcxDBLookupComboBox).Properties.ListSource.DataSet as TMSQuery).FieldByName('Name').AsString:=AText;
        ((Sender as TcxDBLookupComboBox).Properties.ListSource.DataSet as TMSQuery).Post;
        ((Sender as TcxDBLookupComboBox).Properties.ListSource.DataSet as TMSQuery).ReadOnly:=true;
        ((Sender as TcxDBLookupComboBox).Properties.ListSource.DataSet as TMSQuery).Refresh;
         (Sender as TcxDBLookupComboBox).SelText:=AText;
   finally
  end;
 
end;
Все замечательно работает. Пытаюсь тоже сделать для TcxGrid у которого соотвествующий элемент управления TcxDBLookupComboBox) пишет ошибка класса

Всего записей: 652 | Зарегистр. 03-03-2009 | Отправлено: 09:31 08-06-2009
JohnSilver182



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dxLayoutControl1Group1  - не совсем еще  понял
 
На одной dxLayoutControl1Group1  трудно расположит
 
    Group1
Group2  Group3
 
Group3  - налазит  справа на Group1.  Может Сплиттером сделать ??

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

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

Код:
 
|---------------------------------|
|group1                               |
|---------------------------------|
|group2                               |
||--------------|----------------||
||group3        |group4          ||
||--------------|----------------||
|---------------------------------|
 

у group2 поставь свойство Hidden = true

Всего записей: 497 | Зарегистр. 02-03-2007 | Отправлено: 09:41 08-06-2009 | Исправлено: f3ka, 09:42 08-06-2009
JohnSilver182



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
f3ka   ты великий  Шаман просто !!!!
 
 
Добавлено:
А я  тут  у  группы  экспериментировал  с  AlignHorz  , AlignVert   и  AutoAlign   . Вобще не понял  на что они влияют .  
 

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



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть таблица, в таблице есть поле 'Status'. Нашел в примерах как окрасить строки таблицы в зависимости от значения поля 'Status':

Код:
procedure TMainForm.cxGrid1DBTableView1StylesGetContentStyle(
  Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
  AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
begin
     case ARecord.Values[2] of
          0:AStyle:=cxStyle2;
          1:AStyle:=cxStyle3;
          2:AStyle:=cxStyle4;
         else AStyle:=cxStyle1;
     end;
end;

Но при переносе столбца на гриде (изменение порядка) ARecord.Values[2] указывает на другой столбец.
Можно каким нибуть другим способом окрашивать строки в таблице?

Всего записей: 545 | Зарегистр. 29-05-2007 | Отправлено: 11:19 08-06-2009
f3ka

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
lavren
можно например в ARecord.Values[2] написать ARecord.Values[<ColumnNameStatus>.ItemIndex]

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



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

Цитата:
сделай так
 
Код:
 
|---------------------------------|
|group1                               |
|---------------------------------|
|group2                               |
||--------------|----------------||
||group3        |group4          ||
||--------------|----------------||
|---------------------------------|
 
 
у group2 поставь свойство Hidden = true

 
Хмм .  тогда Group4 будет справа  на  обе уже  группы налазить

Всего записей: 829 | Зарегистр. 03-06-2009 | Отправлено: 12:35 08-06-2009
f3ka

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
тяжело объяснить словами... тут надо руками показывать... если координация мышки нарушена то конечно не получиться ничего... там же все очень легко и понятно, главное понимать что именно должно получиться и как оно вообще работает!
уф...
если сначала были созданы 2 группы: Group1 и Group2, затем у Group2 установлено Hidden = true - это не верный ход событий... надо создать 4 группы, затем вытащить группу1 сначала, затем вытащить ниже группу2, затем группу3 ВЫТАЩИТЬ ВНУТРЬ ГРУППЫ2, затем группу4 ВЫТАЩИТЬ ВНУТРЬ ГРУППЫ2 ПРАВЕЕ ГРУППЫ3...  
при работе с дизайнером LayoutControl будут отображаться места куда будет положена выбранная группа... вот здесь то и необходима правильная координация...

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



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

Цитата:
Все замечательно работает. Пытаюсь тоже сделать для TcxGrid у которого соотвествующий элемент управления TcxDBLookupComboBox) пишет ошибка класса  

Да в принципе невнимательность - в TcxGrid Sender не TcxDBLookupComboBox,
а TcxLookupComboBox:
 
     with (Sender as TcxLookupComboBox) do begin
          with (Properties.ListSource.DataSet as TMSQuery) do begin
               ReadOnly:=false;
               Insert;
               FieldByName('MilitaryManagementOrganName').AsString:=AText;
               Post;
               ReadOnly:=true;
               Refresh;
          end;
          SelText:=AText;
     end;

Всего записей: 182 | Зарегистр. 22-10-2006 | Отправлено: 13:18 08-06-2009
ZalivkoDenis



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Доброго времени суток всем.
Опять заработался, и, чуствую -- подклинило.  
1. Есть у меня панелка, а не ней (сверху вниз) cxGroupBox(alTop), cxSplitter(alTop), cxGroupBox(alTop), cxSplitter (alTop), cxGroupBox (alClient). Соотвественно, сплитерам назначены соотвествующие Control, но, блин в рантайме сплиттеры отображаются друг за другом . Где копнуть?
2. Хоть убей, всё облазил, не могу найти где у бара отключается хрень, за которую его (бар) таскать можно (использую скины)?
 
Пасиб.

Всего записей: 537 | Зарегистр. 06-10-2005 | Отправлено: 13:48 08-06-2009
JohnSilver182



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
f3ka  -  ААА ,  понял  
Только  вот  у   dxLayoutControl1  внутрення граница  ИМХО велика . Визуально  миллиметра 4 . Вот если бы поменьше сделать .

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



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

Цитата:
И еще один вопрос.. Есть 2 TcxDBTreeList привязанные к одному датасет в обоих SmartLoad = true и SmartRefresh = false, т.к кол-во записей достаточно большое.. естественно проходя до нужной ветки в одном, хотелось бы чтобы во втором курсор позиционировался на выбранную в первом TreeList запись  (т.е. чтобы они вели себя так, как без включенного SmartLoad), какое событие отработать, чтобы сместить указатель во втором TcxDBTreeList?

Так он и так позиционируется, только проблема в том что еще надо отслеживать
раскрытие ветвей (потому как SmartLoad = True), думаю смотреть надо в сторону OnExpanded, OnCollapsed ...

Всего записей: 182 | Зарегистр. 22-10-2006 | Отправлено: 13:57 08-06-2009
f3ka

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ZalivkoDenis
2. Свойство NotDocking = [dsNone,dsLeft,dsTop,dsRight,dsBottom] (везде поставить True)

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

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
FunCode
Спасибо я тоже уже додумался что там разные наследники.
Но все равно  огромное человеческое

Всего записей: 652 | Зарегистр. 03-03-2009 | Отправлено: 14:21 08-06-2009
ZalivkoDenis



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

Цитата:
везде поставить True

Точно! И даже в dsNone Вот голова -- два уха! Спасибо!!!

Всего записей: 537 | Зарегистр. 06-10-2005 | Отправлено: 16:43 08-06-2009
Meister Floh



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
FunCode это я уже понял и проверил.. Конкретизирую вопрос : Есть 2 TcxDBTreeList привязанные к одному датасет в обоих SmartLoad = true и SmartRefresh = false, т.к кол-во записей достаточно большое.. естественно проходя до нужной ветки в одном, хотелось бы чтобы во втором ветви разворачивались синхронно первому... какое событие отработать, чтобы синхронизировать второй TcxDBTreeList? Добавлю - FullRefresh - не помогает...

Всего записей: 393 | Зарегистр. 04-08-2003 | Отправлено: 19:39 08-06-2009 | Исправлено: Meister Floh, 19:41 08-06-2009
TSGURAL

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Не могу в cxGrid назначить формат для сумм колонок типа Integer. Цифры получаются большие, хочу отделить пробелом по 3 знака (5 330 121). Как это делается?
 
        with SumGroup.SummaryItems.Add as TcxGridDBTableSummaryItem do
        begin
          Column:=MainTableView.Columns[i];
          Column.Summary.GroupFooterKind:=skSum;
          Column.Summary.GroupFooterFormat:= '???';
          FieldName:=MainTableView.Columns[i].DataBinding.FieldName;
          Kind:=skSum;
          Position:=spFooter;
        end;

Всего записей: 9 | Зарегистр. 07-06-2008 | Отправлено: 10:43 09-06-2009
f3ka

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TSGURAL
Column.Summary.GroupFooterFormat:= ',0;-,0';  
а вообще можно в справке найти много полезного про Format, DisplayFormat и EditFormat

Всего записей: 497 | Зарегистр. 02-03-2007 | Отправлено: 10:52 09-06-2009 | Исправлено: f3ka, 10:54 09-06-2009
TSGURAL

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Со справкой туго. Help, что у меня есть, но мне малополезен - большая часть непонятна, поисковая система на слово "format" нашла только "information". Может подскажете, где скачать что-нибудь более дружелюбное (уж про рус. яз и не заикаюсь).
 
Поставила Column.Summary.GroupFooterFormat:= ',0;-,0';  
Ничего не изменилось. Суммы выходят в том же виде: 5330121.00

Всего записей: 9 | Зарегистр. 07-06-2008 | Отправлено: 11:17 09-06-2009
f3ka

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TSGURAL
проблема вся в том что еще необходимо указать
Column.Summary.FooterFormat := ',0;-,0';
P.S. GroupFooterFormat это для итогов в каждой группе... а не по колонке в целом

Всего записей: 497 | Зарегистр. 02-03-2007 | Отправлено: 11:35 09-06-2009 | Исправлено: f3ka, 11:36 09-06-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