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

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

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Люди, а для Delphi 7 где можно скачать накомпонеты??? Для работы с БД нужны и контрлы всякие

Всего записей: 1 | Зарегистр. 12-03-2008 | Отправлено: 09:35 12-03-2008 | Исправлено: Look_at_BustA, 09:37 12-03-2008
X11



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

Всего записей: 3253 | Зарегистр. 24-11-2005 | Отправлено: 09:58 12-03-2008
Dennica



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
X11
У фильтра есть свойство Active. И когда строиш фильтр отключай его изменения:

Код:
  ADataController.Filter.BeginUpdate;
  try
    ADataController.Filter.Root.Clear;
    ADataController.Filter.Root.BoolOperatorKind := fboOr;
    ADataController.Filter.Root.AddItem(tvCustomersPRODUCTID, foEqual, cExpressQuantumGridID, 'ExpressQuantumGrid');
    ADataController.Filter.Root.AddItem(tvCustomersPRODUCTID, foEqual, cXpressQuantumGridID,  'XpressQuantumGrid');
    ADataController.Filter.Root.AddItem(tvCustomersPRODUCTID, foEqual, cXtraGridID, 'XtraGrid');
    ADataController.Filter.Root.AddItem(tvCustomersPRODUCTID, foEqual, cASPXGridID, 'ASPX Grid');      
    ADataController.Filter.Active := False;
  finally
    ADataController.Filter.EndUpdate;
  end;

Всего записей: 235 | Зарегистр. 19-12-2005 | Отправлено: 10:06 12-03-2008
X11



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

Цитата:
ADataController.Filter.Root.AddItem(tvCustomersPRODUCTID, foEqual, cASPXGridID, 'ASPX Grid');      
    ADataController.Filter.Active := False;
  finally  

ты уверен в этом?
может ADataController.Filter.Active := TRUE;

Всего записей: 3253 | Зарегистр. 24-11-2005 | Отправлено: 10:38 12-03-2008
Dennica



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
X11
true конечно, ну описался я =)

Всего записей: 235 | Зарегистр. 19-12-2005 | Отправлено: 10:43 12-03-2008
X11



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

Код:
 
procedure TfmMain.SetFilterByMaxID();
Var
 iMaxID:integer;
begin
  try
    dbgReklama.DataController.Filter.Active := false;
    actResetFilterGroupSortExecute(nil);
    iMaxID := DM.GenId('gen_treklama_id');
    dbgReklama.DataController.Filter.BeginUpdate;
    WITH dbgReklama.DataController.Filter.Root do begin
      Clear;
      AddItem(dbgReklamaID, foGreater, iMaxID, IntToStr(iMaxID));
    end;
    dbgReklama.DataController.Filter.Active := true;
  finally
    dbgReklama.DataController.Filter.EndUpdate;
  end;
end;
 
 

Всего записей: 3253 | Зарегистр. 24-11-2005 | Отправлено: 11:05 12-03-2008
StdNet

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
на свой вопрос по поводу определения значения поля которое не отображаеться в гриде придумал такое решение:
 

Код:
 
private void gridControl1_KeyUp(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                int rowno = gridView1.GetDataSourceRowIndex(gridView1.FocusedRowHandle);
                string id =  ds1.Tables[0].Rows[rowno]["id"].ToString();
            }
        }
 
 

 
может есть еще какой то способ? реализованый в самом гриде?

Всего записей: 70 | Зарегистр. 03-08-2006 | Отправлено: 09:52 13-03-2008
X11



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть dxSkinController и есть combobox, как в компобокс "запихать" список скинов?
Спасибо.
 
Добавлено:
принцип такой, чтобы пользователь мог выбирать скин

Всего записей: 3253 | Зарегистр. 24-11-2005 | Отправлено: 10:19 13-03-2008
X11



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как в dxMemData определить, существует ли поле с именем, например 'Name1'?

----------
/не мы такие, жизнь такая/

Всего записей: 3253 | Зарегистр. 24-11-2005 | Отправлено: 12:39 13-03-2008 | Исправлено: X11, 12:40 13-03-2008
Dennica



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

Код:
 
    with memdsetX.FindField('Name1') do
    begin
       Value := 0;
    end;
 

 
это работает не только для dxMemData а вообще для всех потомков TDataSet

Всего записей: 235 | Зарегистр. 19-12-2005 | Отправлено: 13:42 13-03-2008
shulum



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
X11
dxMemData.FieldList.IndexOf('бла-бла')
если выдаст -1, то поля нет, в противном случае значение будет индексом поля

Всего записей: 121 | Зарегистр. 11-06-2006 | Отправлено: 13:57 13-03-2008
X11



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Dennica
мне нужно что-то типа if Dataset1.FieldExists('Name1') then Dataset1.FieldByName('Name2').As....[q][/q]

Всего записей: 3253 | Зарегистр. 24-11-2005 | Отправлено: 14:29 13-03-2008
korobovmax



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Вызвать у датасета FindField и проверить на nil
 
FieldByName юзать не надо - ругается:
FindField is the same as the FieldByName method, except that it returns nil (Delphi) or NULL (C++) rather than raising an exception when the field is not found.

Всего записей: 276 | Зарегистр. 23-01-2005 | Отправлено: 14:50 13-03-2008
Dennica



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

Цитата:
на свой вопрос по поводу определения значения поля которое не отображаеться в гриде придумал такое решение:  
 
 
Код:  
private void gridControl1_KeyUp(object sender, KeyEventArgs e)  
        {  
            if (e.KeyCode == Keys.Enter)  
            {  
                int rowno = gridView1.GetDataSourceRowIndex(gridView1.FocusedRowHandle);  
                string id =  ds1.Tables[0].Rows[rowno]["id"].ToString();  
            }  
        }  
 
 
 
 
может есть еще какой то способ? реализованый в самом гриде?

 
Незнаю как на C это переписать, но на delphi выглядит так:

Код:
 
gridView1.DataController.GetItemByFieldName('id').EditValue
 

 
Добавлено:
Добалю еще что если у тебя стоит SyncMode = True (по умолчанию так), грид синхронизирует текущую запись с датасетом, поэтому можно не заморачиваясь прочитать сам датасет.
 
Добавлено:
X11

Цитата:
мне нужно что-то типа if Dataset1.FieldExists('Name1') then Dataset1.FieldByName('Name2').As....

То, что я написал это другая форма записи того, что ты хочеш. Если функция вернет nil, то в with программа не попадет.

Всего записей: 235 | Зарегистр. 19-12-2005 | Отправлено: 15:52 13-03-2008
StdNet

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
2Dennica
 
а не подскажеш как сделать что то типа комбо бокса но что бы там было например 2 поля(по одному из них можно было искать) и при выборе значения (например descr) можно было вытянуть ID например который не отображаеться? )

Всего записей: 70 | Зарегистр. 03-08-2006 | Отправлено: 22:24 14-03-2008
korobovmax



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
StdNet, смотри lookupcombobox и lookupcomboboxex

Всего записей: 276 | Зарегистр. 23-01-2005 | Отправлено: 08:36 15-03-2008
AngeIa

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день всем.
Скачала DevExpress, но установить на Делфи 2007 не получается, компиляция проходит нормально, а когда нажимаю install пишет - can't be installed becouse it is not a design time package. В чем может быть проблема?

Всего записей: 13 | Зарегистр. 24-04-2007 | Отправлено: 08:45 15-03-2008
Rudia



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AngeIa
Посмотрите ещё, скорее всего там есть ещё пакеты, а то, что вы скомпилировали, нужен для других пакетов.

Всего записей: 324 | Зарегистр. 13-09-2006 | Отправлено: 13:21 15-03-2008
Dennica



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AngeIa
Скачай лучше инсталяк от feandy отсюда и не мучайся.

Всего записей: 235 | Зарегистр. 19-12-2005 | Отправлено: 13:52 15-03-2008 | Исправлено: Dennica, 14:28 15-03-2008
korobovmax



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
can't be installed becouse it is not a design time package - значит, что пакет динамический (runtime).
Применительно к ДевЭкспресс: надо только скомпилять ваш пакет (с префиксом vcl), но не устанавливать (не получится). Открыть пакет с таким же названием, но с префиксом (dcl). Скомпилять и установить его.
 
Как было замечено Rudia, бывает и ошибка в очереди установки пакетов. В вашем случае другая ошибка, но очередь надо соблюсти.
 
И, наконец, как было сказано Dennica, проще всего - дистрибутив от feandy с уже созданным сценарием автоматической установки компонентов в разные IDE.

Всего записей: 276 | Зарегистр. 23-01-2005 | Отправлено: 15:57 15-03-2008
   

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