Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Использование DevExpress 2

Автор: IgorXI
Дата сообщения: 17.04.2007 10:02
Подскажите, можно ли таблице квантумгрида динамически во время выполнения программы скрывать из футера просуммированные значения?
Автор: Dronton2
Дата сообщения: 17.04.2007 11:19
IgorXI
Можно. Примерно так:
DataController.Summary.FooterSummaryItems.IndexOfItemLink(myColumn).Kind := skNone;
Автор: tevtonec
Дата сообщения: 17.04.2007 12:15
Вопрос закрыт. Проблема была в формировании OLAPConnectionString
Автор: HellBlaZe
Дата сообщения: 17.04.2007 16:46
Подскажите пожалуйста, как в TcxCalcEdit задать чтобы при вводе значений нельзя было набирать символ десятичного разделителя? ..
Автор: xokc
Дата сообщения: 17.04.2007 18:29
HellBlaZe
procedure TForm1.cxCalcEdit1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
if Key = ThousandSeparator then Key=0;
end;
Автор: Dronton2
Дата сообщения: 18.04.2007 09:16
HellBlaZe
xokc
Только не ThousandSeparator, а DecimalSeparator
Автор: HellBlaZe
Дата сообщения: 18.04.2007 15:06
xokc, Dronton2 спасибо! всё получилось


Добавлено:
у меня почемуто никак не удается сделать чтобы TcxGrid слушался TabOrder на форме, .. и SetFocusedControl не помогает.. может ктонибудь уже с этим разбирался ???

Добавлено:

Цитата:
у меня почемуто никак не удается сделать чтобы TcxGrid слушался TabOrder на форме, .. и SetFocusedControl не помогает.. может ктонибудь уже с этим разбирался ???

снимаю вопрос, решилось
Автор: IgorXI
Дата сообщения: 19.04.2007 05:30
Dronton2
В этом случае пропадёт просто просуммированное значение, поле все равно останется, мне было интересно, как скрыть полностью поле, потому что я у себя пользуюсь опцией MultiSummaries, которая позволяет выводить две суммы в одну колонку, по логике программы я хотел сделать, то-бы вторая сумма была видна при определённых условиях, что-бы не загромождать таблицу, по видимому вопрос видимости простой установкой свойства не решается, поэтому пока решил вопрос методом динамического создания объекта и последуещего удаления, когда нужно скрыть, хотя было бы удачнее установкой свойства типа Visible.
Автор: IgorXI
Дата сообщения: 19.04.2007 11:40
Ещё у меня появилась задача, что-бы курсор находился всегда в центре таблицы при движении вверх-вниз, подскажите если кто знает, как можно такое реализовать.
Автор: Dronton2
Дата сообщения: 19.04.2007 12:57
IgorXI
Смотри в help-файле
TcxDataSummaryItems.OnSummary
там же есть пример:

Код: procedure TForm1.cxGrid1DBTableView1TcxGridDBDataControllerTcxDataSummary
DefaultGroupSummaryItemsSummary(
ASender: TcxDataSummaryItems; Arguments: TcxSummaryEventArguments;
var OutArguments: TcxSummaryEventOutArguments);
var
AArea, APopulation: Extended;
begin
//Locate a value in the specific record for Area item
AArea := ASender.DataController.Values[Arguments.RecordIndex, DBTableView1Area.Index];

//Locate a value in the specific record for Population item
APopulation := ASender.DataController.Values[Arguments.RecordIndex, DBTableView1Population.Index];
//Set population density to Value
OutArguments.Value := APopulation / AArea;
end;
Автор: HellBlaZe
Дата сообщения: 19.04.2007 13:06
подскажите, я поставил ExpressQuantumGrid Suite 6.23 из исходников .. замечательно, всё работает, теперь хочу добавить ExpressBars Suite v6.24 из исходников, но тогда получаются пересекающиеся модули разных версий как заставить это дружить ?
Автор: john_rico
Дата сообщения: 19.04.2007 13:42
HellBlaZe
тоже интересует, пробовал подружить, но все безуспешно
Автор: HellBlaZe
Дата сообщения: 19.04.2007 13:51
я попробовал только что кильнуть все devexpr BPLки,dcu итп, оставил только pas и dpk, пути в libs ко всем сверил, компилю всё по порядку, но когда пытаюсь проинсталить любой dcl** из папки ExpressBars 6, получаю ошибку о том что "фция ххх не найдена в dxThemeD7.bpl" хотя "XP Theme Manager" я брал из старшей версии которая у ExpressBars Suite v6.24, и bars 6 принадлежат именно к этому паку .. бред
Автор: john_rico
Дата сообщения: 19.04.2007 13:56
я делал наоборот все ставил, но не смог поставить грид
Автор: HellBlaZe
Дата сообщения: 19.04.2007 14:11
"
The procedure entry point @Dxuxtheme@GetThemeBackgroundContentRect$qqruiuiiip11Types@TRectr11Types@TRect could not be located in the dynamic library dxThemeD7.bpl
"
это выдается при попытке установки dclcxBarEditItemD7.dpk
Автор: Dronton2
Дата сообщения: 19.04.2007 14:15
HellBlaZe
john_rico
Имхо, подружить их невозможно. У этих компонентов есть общие библиотеки. Установка компонентов из другой версии, перезаписывает эти библиотеки. И старые компоненты не могут к этим библиотекам корректно обращаться. Поэтому нужно ставить всё одной версии.
Автор: HellBlaZe
Дата сообщения: 19.04.2007 14:26
тогда такой вопрос, есть ли у кого нибудь DevExpress FULL 6.XX ?
Автор: Dronton2
Дата сообщения: 19.04.2007 15:18
HellBlaZe
см. форум, указанный в шапке.
Автор: Xaoc666
Дата сообщения: 19.04.2007 15:34
Для установки всего ДевЭкспресса я делал так
1. Создал папку для всех компонент, например D:\LIBD6\DevExpress
2. В нее кинул все компоненты. Структура каталогов такая:

Код:
15.12.2006 09:16 <DIR> ExpressQuantumTreeList 4
02.03.2007 12:27 <DIR> ExpressDataController
02.03.2007 12:27 <DIR> ExpressEditors Library 5
02.03.2007 12:27 <DIR> ExpressExport Library
02.03.2007 12:27 <DIR> ExpressLibrary
02.03.2007 12:27 <DIR> ExpressPageControl 2
02.03.2007 12:26 <DIR> ExpressQuantumGrid 6
02.03.2007 12:27 <DIR> XP Theme Manager
15.03.2007 15:54 <DIR> ExpressBars 5
15.03.2007 15:54 <DIR> ExpressCommon Library
15.03.2007 15:54 <DIR> ExpressDBTree Suite
15.03.2007 15:57 <DIR> ExpressFlowChart
15.03.2007 15:55 <DIR> ExpressGDI+ Library
15.03.2007 15:54 <DIR> ExpressLayout Control
15.03.2007 15:54 <DIR> ExpressMasterView
15.03.2007 15:54 <DIR> ExpressMemData
15.03.2007 15:55 <DIR> ExpressNavBar
15.03.2007 15:57 <DIR> ExpressOrgChart
15.03.2007 15:55 <DIR> ExpressPivotGrid
15.03.2007 15:56 <DIR> ExpressPrinting System
15.03.2007 15:56 <DIR> ExpressScheduler 2
15.03.2007 15:56 <DIR> ExpressSpreadSheet
16.03.2007 13:26 <DIR> ExpressVerticalGrid
Автор: john_rico
Дата сообщения: 19.04.2007 15:38
наверное не так понял вопрос, хотели подружить бар v6.24 с гридом v6.23
Автор: HellBlaZe
Дата сообщения: 19.04.2007 15:45
да, если из одного пака то всё инсталлится отлично
Автор: Xaoc666
Дата сообщения: 19.04.2007 15:49
HellBlaZe

Грид и бар - разных версий. все отлично работает. В частности грид 6.23. Бары - не помню, но отличные от гридовской, это точно, ибо устанавливал их я в разное время, но пересобирал все дпк-шки.
Автор: HellBlaZe
Дата сообщения: 19.04.2007 15:57
Xaoc666
хм .. вот это странно, процес установки у меня практически идентичен тому что ты описал
Автор: Dronton2
Дата сообщения: 19.04.2007 16:14
Xaoc666
К шестым гридам должен хорошо устанавливаться пятый бар (имхо, т.к. они используют непересекающиеся библиотеки). Тот инсталл, который можно найти по ссылке в шапке, умеет это делать. Но версии с одинаковой первой цифрой должны иметь одинаковые остальные цифры, т.к. используют одинаковые общие библиотеки.
Автор: Xaoc666
Дата сообщения: 19.04.2007 17:27
Dronton2

Повторюсь. У меня бар и грид - разных минорных версий (мажорная версия у них - 6). Все отлично работает. Общие модули я использую из того пака, где версия больше. Обычно ребята из ДевЭкспресс обратную совместимость держат (по крайней мере - для минорных версий)
Автор: Menel
Дата сообщения: 20.04.2007 07:38
Вопрос такой...
Установил апрельский ExpressBars.Suite.v6.24 на Delphi 5, все прекрасно работает, компилится демо версия RibbonNotepadDemo.exe, работает.

Но вот только при использовании компонента dxBarScreenTipRepository1, при редактировании его Items возникает ошибка Invalid Section 'TdxBarScreenTipCollection' has on owner

Причем ошибка эта возникает при любом использовании компонента, не только в примере, но и в новом проекте.

Помогить решить ее
Автор: Shadi
Дата сообщения: 20.04.2007 09:31
All, привет!
Работаю с 6 гридом и пытаюсь динамически строить фильтр.
В примерах есть следующее:

Цитата:
with tvCustomers.DataController.Filter.Root do
begin
Clear;
case AFiltering of
ufNone:
Clear;
ufTwoField:
begin
BoolOperatorKind := fboAnd;
AddItem(tvCustomersCUSTOMER, foEqual, True, 'True');
AddItem(tvCustomersPRODUCTID, foEqual, cExpressQuantumGridID,
'ExpressQuantumGrid');
end;
ufBetween:
begin
BoolOperatorKind := fboAnd;
ADate := GetDate(dtFirstOfYear);
AddItem(tvCustomersPURCHASEDATE, foGreaterEqual,
(ADate), DateToStr((ADate)));
ADate := GetDate(dtLastOfYear);
AddItem(tvCustomersPURCHASEDATE, foLessEqual,
(ADate), DateToStr((ADate)));
end;
ufUserFilter:
SetOnlyGridsFilter(tvCustomers.DataController.Filter.Root);
ufGroup:
begin
BoolOperatorKind := fboAnd;
SetOnlyGridsFilter(AddItemList(fboOr));
V := VarArrayCreate([0,1], varInteger);
V[0] := cVisaID;
V[1] := cAmExID;
AddItem( tvCustomersPAYMENTTYPE, foInList, V,
'Visa, American Express');
end;
ufList:
begin
BoolOperatorKind := fboOr;
AddItem(tvCustomersPAYMENTTYPE, foEqual, cCashID, 'Cash');
AddItem( tvCustomersPAYMENTTYPE, foEqual, cAmExID, 'American Express');
end;
end;
end;
tvCustomers.DataController.Filter.Active := True;
finally
FLock := False;
end;
end;




Но это полный гемморой!!!

У грида есть проперти

Grid.DataController.Filter.FilterText := <условие одной стокой>

В настройках града установлено DataController.Filter.Active := True;

Стал пробовать и на одном гриде все так ладненько стало работать.. Просто подставляю строку условий и сразу идет срабатывание фильтра.
Сделал копи данного грида и перенес на другую форму. Пробую там делать тоже самое и в ответ тишина

Пришлось делать все так:

Цитата:
AFilterControl := TcxFilterControl.Create(Self);
AFilterControl.LinkComponent := GridDB;
if Length(trim(filter_)) > 0 then
begin
AFilterControl.LoadFromFile('filter.flt');
AFilterControl.ApplyFilter;
end else
begin
AFilterControl.Clear;
AFilterControl.ApplyFilter;
end;
finally // wrap up
AFilterControl.Free;
end; // try/finally


Но предварительно сохраняю filter.flt в блоб поле...
Может кто знает как надо делать чтобы заработала строка:
Grid.DataController.Filter.FilterText := <условие одной стокой>

Заранее спасибо!



Автор: Dronton2
Дата сообщения: 20.04.2007 12:07
Была у меня раньше такая конструкция в программе:

Код: cxLookAndFeelController1.Kind := TcxLookAndFeelKind(comboLF.ItemIndex);
Автор: ArtemiyUO
Дата сообщения: 22.04.2007 10:26
Ребята, тестирую Д2007 в связке с последними девками (11 апреля, из обменника) на предмет корректной работы для последующего перевода проектов.
Все работает кооректно но нашел один неприятный глюк(
Если открыть окно "настроить" у барменеджера в рунтайме и нажать "сбросить" у главного меню появляется непонятный АВ где то в недрах дельфи, в стеке вызовов при этом есть процедура бара "resetwithconfirmation" а дальше идет различные процедуры ВЦЛ типо readcomponentfrom form и т.п.
Бар используется 5, все тоже самое на каких то старых девках в 2006 (летних или осенних) работает корректно. Немогу понять чем вызвана ошибка, но это точно не мое, это либо Д2007 либо новые девки.

Создал простейший пример (форма, актионлист, барменеджер 5, несоклько пунктов меню)
при нажатии сброс, АВ.

Хочу что бы кто то еще проверил данную связку, пример кину на мыло по запросу (ибо незнаю куда выложить).
Автор: ArtemiyUO
Дата сообщения: 22.04.2007 13:35
Вообщем покрутил, разобрался немного.
Ошибка в новой версии 5 бара, в шестой этой ошибки нет, этот же пример работает нормально.
Так же в старой версии этой ошибки нет, я взял старые исходники бара (пару месяцев назад, отличия минимальные), заменил ими новые, перекомпилил, все работает гладко.
Вообщем баг в дхбар 5 имо налицо.

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182

Предыдущая тема: Язык программирования на русском языке


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.