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

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

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

ShIvADeSt (29-01-2007 03:17): идем сюда
http://forum.ru-board.com/topic.cgi?forum=33&topic=7918
 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

   

golkanavt



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

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




 
Сами прирученные компоненты частенько приходят на водопой сюда

Всего записей: 1069 | Зарегистр. 08-04-2002 | Отправлено: 10:42 08-10-2003 | Исправлено: golkanavt, 15:41 08-09-2006
SergBSI

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

Всего записей: 516 | Зарегистр. 09-12-2003 | Отправлено: 12:05 17-03-2006
NeoKray

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Кто нито кинте примеры по использованию cxVerticalGrid. А то чего то у меня в папке VerticalGrid нет папки Demos.

Всего записей: 22 | Зарегистр. 05-03-2005 | Отправлено: 13:48 17-03-2006
kii

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Народ!!!
А в мартовский девках с PrintSystem 3.5.5  QGrid и далее не печатается, а?

Всего записей: 137 | Зарегистр. 11-02-2004 | Отправлено: 14:27 17-03-2006
waik



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
NeoKray
 
Держи _http://rapidshare.de/files/15716634/Demos.zip.html

Всего записей: 605 | Зарегистр. 15-01-2003 | Отправлено: 14:38 17-03-2006
Alex47



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

Цитата:
После установки последник DevExpress возникла следующая проблема:    
в Gride всегда показывается Preview, независимо от того, есть ли данные.  
На devexpress.public.vcl.quantumgrid5 я нашел сообщение об этом:  
This issue has been fixed. Please contact our Support Team to obtain a hot    
fix for the issue with ID: DB3467.  
Может кто знает, что внутри этой DB3467?

 
А это не помогает(взято из той же thread):
"If I am remembering correctly I believe that you can change the preview  
field properties to a Memo edit and the problem will go away."
Там две проблемы обсуждаются, и это, похоже, относится только ко второй.

Всего записей: 366 | Зарегистр. 20-03-2003 | Отправлено: 00:32 18-03-2006 | Исправлено: Alex47, 00:44 18-03-2006
xokc

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
NeoKray
PM читать надо. Неделю назад еще кидал.

Всего записей: 477 | Зарегистр. 22-09-2002 | Отправлено: 11:49 18-03-2006
vcrank

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Наивный вопрос:
А есть ли хелпы на русском?
Можно, конечно, примеры, но только в исходниках - exe много весит

Всего записей: 1067 | Зарегистр. 24-10-2005 | Отправлено: 15:30 18-03-2006
inner

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Народ, как убрать у TcxImage popup-меню при клике правой кнопкой мыши?
 
Добавлено:
Извините за флуд. Невнимательный я.

Всего записей: 97 | Зарегистр. 10-12-2005 | Отправлено: 17:20 18-03-2006
clear2121



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

Цитата:
Встречный вопрос - какая СУБД?

MS SQL 2000

Цитата:
; какой тип поля у  Field1;Field2 ? (char "добивает" значение поля до полной длины пробелами, varchar этого не делает).  

Попробовал varchar - что то не получилось

Цитата:
Как данные попадают в Field1;Field2 ?

Загружаю таблицу, не SELECTом. Отсюда и вся бодяга

Цитата:
Само  "дерево" тебе ничего обрезать не будет: если у тебя в поле Field1 значение "ВАСЯ              ", то так оно и будет выводится везде. Сделай чтобы в поле было уже нормализованное значение...

С этим сейчас и борюсь
СПАСИБО!

Всего записей: 311 | Зарегистр. 07-04-2005 | Отправлено: 09:50 20-03-2006
ThunderES



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

Цитата:
А это не помогает(взято из той же thread):  
"If I am remembering correctly I believe that you can change the preview  
field properties to a Memo edit and the problem will go away."  
Там две проблемы обсуждаются, и это, похоже, относится только ко второй.

 
Что-то не помогло

Всего записей: 71 | Зарегистр. 15-09-2003 | Отправлено: 12:10 20-03-2006
Dennica



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите как найти ноду в TcxTreeList по колонке содержащей цифири? Нашол метод FindNodeByText, но он ищет по подстроке с начала строки. Т.е. может запросто отыскать ноду с номером в колонке 1234 вместо требуемого 123.
Еще видел метод Find, там в нем можно свою функцию фильтрации определить, только я не понял что за параметр там AData: Pointer. В хэлпе про него нислова.
Приведу синтаксис из хэлпа для Find, может кто растолкует:
type
    TcxTreeListFindFunc = function(ANode: TcxTreeListNode; AData: Pointer): Boolean;
function Find(AData: Pointer; AStart: TcxTreeListNode; AExpandedOnly, AForward: Boolean; AFilter: TcxTreeListFindFunc): TcxTreeListNode;

Всего записей: 235 | Зарегистр. 19-12-2005 | Отправлено: 13:44 22-03-2006
korobovmax



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Dennica, а что надо сделать с нодой? Для чего поиск?

Всего записей: 276 | Зарегистр. 23-01-2005 | Отправлено: 16:42 22-03-2006 | Исправлено: korobovmax, 16:42 22-03-2006
Alex1978

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Dennica
AData: Pointer
указатель на что-либо.
 
Интересно как ты ноды заносишь в cxTreeList?
 
Add и AddChild - используют эти параметры.
 
Ладно, в твоем случае если ты не используешь Data, то можно сделать так:
 
После заполнения TreeList (текст-название нода храниться в первой колонке TreeList), для поиска нода по значению в этой колонке используешь функцию типа этой:
 
function GetNodeFromNodeText(Text: String): TcxTreeListNode;
var
  Node: TcxTreeListNode;
begin
  Result := nil;
  with TreeList do
  begin
    if Count = 0 then
      Exit;
    Node := Items[0];
    while Assigned(Node) do
    begin
      if Node.Texts[0] = Text then
      begin
        Result := Node;
        Break;
      end;
      Node := Node.GetNext;
    end;
  end;
end;  
 
Но в таком случае есть возможность найти не искомый нод, а нод имеющий тот же текст. Поэтому для определенных случаев можно использовать другой метод поиска. Но это уже выходит за рамки вопроса. Сразу скажу что если дерево заполняется данными из базы данных то лучше использовать другой метод, аналогичный этому но использующий ID записи и AData.

Всего записей: 306 | Зарегистр. 27-02-2003 | Отправлено: 18:06 22-03-2006
Dennica



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
to korobovmax
Нужно проверить есть нода с определенным числом в определенной колонке или нет, если есть то вернуть ее.
to Alex1978
>Интересно как ты ноды заносишь в cxTreeList?
Заношу так:
  with qrySubdivisionAvailable, framSubdivision do begin
    ParamByName('id_agent').Value := dmDataAG.qryAgent.FieldValues['id'];
    if Active then
      Refresh
    else
      Open;
    tlAvailable.Clear;
    First;
    while not Eof do begin
      with tlAvailable.Add do begin
        Values[0] := FieldValues['id'];
        Values[1] := FieldValues['name'];
      end;
      Next;
    end;
  end;
В общем раз стандартных средств поиска нет то наваял следующее, может кому пригодится
function FindNodeInTcxTreeList(const AValue: Variant; ATreeList: TcxTreeList; AColumn: TcxTreeListColumn): TcxTreeListNode;
var
  i: Integer;
  ANode: TcxTreeListNode;
begin
  for i := 0 to ATreeList.Nodes.Count - 1 do begin
    ANode := ATreeList.Nodes[i];
    if AValue = ANode.Values[AColumn.ItemIndex] then begin
      Result := ANode;
      Exit;
    end;
  end;
  Result := nil;
end;
 

Всего записей: 235 | Зарегистр. 19-12-2005 | Отправлено: 07:32 23-03-2006 | Исправлено: Dennica, 07:46 23-03-2006
Alex1978

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Dennica
Можно и так. Только нужно проверку поставить на пустой ATreeList. И нужно все таки понять для чего Data.
 
И вообще я не пойму на кой тебе при такой теме TreeList ?
 
while not Eof do begin  
  with tlAvailable.Add do begin  
    Values[0] := FieldValues['id'];  
    Values[1] := FieldValues['name'];  
  end;  
  Next;  
end;  
 
Add, Add ... - где построение дерева, где родитель, где дочерние узлы? Используй грид и не морочь голову.
 
Дерево строится где-то таким образом
 
function GetNodeFromData(Data: Integer): TcxTreeListNode;
var
  Node: TcxTreeListNode;
begin
  Result := nil;
  with TreeList do
  begin
    if Count = 0 then
      Exit;
    Node := Items[0];
    while Assigned(Node) do
    begin
      if Integer(Node.Data) = Data then
      begin
        Result := Node;
        Break;
      end;
      Node := Node.GetNext;
    end;
  end;
end;
 
procedure LoadTree;
var
  Node: TcxTreeListNode;
begin
  with MainDM, TreeList do
  begin
    Node := Add(nil,Pointer(0));
    Node.Texts[0] := 'Содержание';
    with TpFIBDataSet.Create(nil) do
    try
      Database := dbBase;
      Transaction := trRd;
      SQLs.SelectSQL.Add('SELECT * FROM Таблица ORDER BY ID');
      Active := True;
      while not Eof do
      begin
        Node := AddChild(GetNodeFromData(FieldByName('Родительский ID').AsInteger),
          Pointer(FieldByName('ID').AsInteger));
        Node.Texts[0] := FieldByName('Текст Нода').AsString;
        Next;
      end;
      Active := False;
      GotoBOF;
      FocusedNode.Expand(False);
    finally
      Free;
    end;
  end;
end;
 
Да вот еще что, по ходу твоих названий виддимо ты пытаешься построить дерево корреспондентов, сгрупированных по разным папкам. На мой взгляд правильно и удобно. Но исходя из своего опыта могу сказать - папки храни в одной таблице, корреспондентов в другой.

Всего записей: 306 | Зарегистр. 27-02-2003 | Отправлено: 09:13 23-03-2006 | Исправлено: Alex1978, 10:54 23-03-2006
JackOff



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Господа, а кто ни будь, пытался “собирать” статьи из Knowledge Base сайта devexpress скажем в формате chm?

Всего записей: 73 | Зарегистр. 13-11-2005 | Отправлено: 12:56 23-03-2006
korobovmax



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

Цитата:
to korobovmax
Нужно проверить есть нода с определенным числом в определенной колонке или нет, если есть то вернуть ее.  

 
Dennica, я обычно делаю так:
1. Вызов BeginUpdate;
2. Пробежаться по записям таблицы, найти и сделать всё, что надо;
3. EndUpdate;
 
---------------------------------------------------------------------
 
JackOff, а неплохо бы и собрать материалы как KB, так и нашей темы. Я готов этим заняться.

Всего записей: 276 | Зарегистр. 23-01-2005 | Отправлено: 16:40 23-03-2006
oly

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите как можно с помощью DevExpress сделать многострочную шапку грида
--------------------------------------
|Наименование  |  Кол-во         |
|                       |-----------------|
|товара             |план | факт    |
------------------------------------
При этом сохранить функциональность column-ов - сортировка, группировка, фильтр, customisation,  ограничить перемещения колонок "План", "Факт" только внутри "Кол-во"

Всего записей: 4 | Зарегистр. 23-03-2006 | Отправлено: 17:50 23-03-2006
vshersh



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
oly
Используй TcxGridDBBandedTableView.  
там есть соответствующие настройки (TcxGridBandOptions)

Всего записей: 506 | Зарегистр. 12-01-2006 | Отправлено: 17:57 23-03-2006
gpi

Alone Wanderer
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
oly
Попробуй использовать cxGridDBBandedTableView

Всего записей: 432 | Зарегистр. 30-05-2004 | Отправлено: 17:58 23-03-2006
   

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

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Использование DevExpress
ShIvADeSt (29-01-2007 03:17): идем сюда
http://forum.ru-board.com/topic.cgi?forum=33&topic=7918


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru