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

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

Автор: WebInc
Дата сообщения: 09.06.2007 06:16
Народ поставил Девок от 27.04.07 (взял с аплоада) на Builder 5, система XP SP2
Глючат ужасно, не могу понять в чем дело
Симптомы такие
1. Кнопка cxButton при бросании на форму черная
2. При кидании на форму cxGrid валится куча ошибок
Privileged instruction
Access violation ...
External exception C000001E
cxlibraryvclc5.bpl
Canvas does not allow drawing
3. На более менее сложных компонентах то же самое
4. Кнопки в диалогах настройки компонент тоже черные
Раньше работал с более старыми и на Delphi 7 никаких таких проблем не было
Кто-нибудь знает в чем может быть проблема?

Проверил на 2K SP4 + Builder 5 то же самое
Автор: Dronton2
Дата сообщения: 09.06.2007 10:30
WebInc
Может быть, специально попорченная версия, распространяемая производителем?
В шапке есть ссылка на топик, где можно получить эти компоненты в работоспособном виде. Кстати, ждём версию от 7 июня.
Автор: yuish
Дата сообщения: 09.06.2007 15:00
Глюк или так теперь будет?
Стоят апрельские девки. Грид6. Раньше при сортировке в заголовке поля появлялась стрелочка, куда оно сортирует (вверх, вниз) - теперь стрелочки нет. сортирует все нормально. но куда и по какому полю (если сортирую сразу не по одному) не видно.

Добавлено:
Извиняюсь. разобрался.
если стоит стиль УльтраФлет и в стилях на хеадер присвоен темный цвет - просто не видно стрелочек .
Автор: zver
Дата сообщения: 10.06.2007 09:47
Подскажите, как в cxGrid-e сделать сортировку сразу по нескольким столбцам?
Например, по второму по убыванию, а если во втором столбце есть одинаковые записи, то по третьему по возрастанию.
В SQL это будет так "order by 2 desc, 3 asc".
Но надо чтобы пользователь сам установил какую-нибудь галочку и сам подряд выбрал столбцы.
Автор: afiget
Дата сообщения: 10.06.2007 10:28
Щелкать мышкой нужно с зажатым шифтом.
Автор: skinash
Дата сообщения: 10.06.2007 13:10
yuish
В новой версии Grid6 действительно не всегда стоит эта стрелочка.
Grid->GridLevel->TableView->OptionsView->ShowColumnFilterButtons:
sfbWhenSelected
sfbAlways
Автор: zver
Дата сообщения: 10.06.2007 21:20
Спасибо, afiget, помогло. Просто не знал про шифт.
Автор: WebInc
Дата сообщения: 13.06.2007 01:30
Dronton2
От туда и брал
Если у тебя есть нормальные брось плиз на webinc [собака] gmail тчк com
Автор: Dronton2
Дата сообщения: 13.06.2007 09:37
WebInc
Тоже брал оттуда. Всё работает нормально. D2005, WinXP.

skinash
Ты путаешь сортировку и фильтрацию.
Автор: skinash
Дата сообщения: 13.06.2007 17:56
Dronton2
Спасибо за уточнение. Как то не подумал.
Автор: HalfLitre
Дата сообщения: 13.06.2007 18:45
Вернусь к своему вопросу :

Цитата:

Может кто сталкивался :
В девках от 27 apr 2007, при обычном скролинге
периодично выскакивает
error : -259 SQL error:Cursor not open.
Закроешь, откроешь форму, уже все OK.

Форма простая до безобразия:
Query в связке с TcxGridDBTableView.

Выяснил что если поставить DataController.DataModeController.GridMode:=false то все работает OK,
но тогда грид вытягивает весь курсор сразу.

При GridMode:=true вылетает только если делаешь begin work,update/локировку записи,
и вызов формы на изменение и по ее закрытию(отмене) rollback work.

потом при скролинге через короткое время или
-259 SQL error:Cursor not open. или
-400 SQL error: Fetch attempted on unopen cursor.

Начал экспериментировать дальше, убрал :
begin work,update/локировку записи, и по ее закрытию rollback work.
В таком варианте все отлично.
Может у когото есть мысль куда копать, заранее спасибо.
Delphi 7+IDAC+DevGrid (апреля 2007)
Автор: WebInc
Дата сообщения: 14.06.2007 03:09
Dronton2
По видимому дело в Builder 5, т.к. на Builder 6 и Delphi 7 компоненты встали нормально.
Автор: Dronton2
Дата сообщения: 14.06.2007 09:19
HalfLitre

Цитата:
Форма простая до безобразия:
Query в связке с TcxGridDBTableView.


Цитата:
вылетает только если делаешь begin work,update/локировку записи,
и вызов формы на изменение и по ее закрытию(отмене) rollback work.

Оказывается, не такая уж и простая форма. Совершенно непонятно, как выглядит и что делает код после слова "begin", и где слово "end", относящееся к нему. Неаккуратно как-то получается. Но, скорее всего, закрытие курсора где-то внутри этого кода или в event'e, прикреплённом к этому коду. Нужно пройтись отладчиком.

Я с IDAC не работал, но, возможно, проблема может быть также и в компоненте: что-то вроде закрытия курсора по тайм-ауту и т.п.
Автор: drunk2
Дата сообщения: 14.06.2007 10:39
Можно ли выровнять кнопки TdxBar по правому краю? Желательно не все, а избранные
Автор: Dronton2
Дата сообщения: 14.06.2007 12:05
drunk2
Можно только одну, при условии:
1. Это последняя кнопка в тулбаре
2. bar.UseRestSpace := True;
У кнопки есть свойство Align: (iaLeft, iaCenter, iaRight, iaClient)
В *.hlp файле есть картинка как будет выглядеть результат.
Автор: drunk2
Дата сообщения: 14.06.2007 12:33
Dronton2
Маловато одной. Хотя последней можно сделать TdxBarControlContainerItem/TdxBarSubItem... и нацеплять туда, но это не комильфо.

Добавлено:
Кто нибудь сделал инкрементальный поиск/подсветку как firefox?
Автор: SerjP75
Дата сообщения: 14.06.2007 13:18
Grid v6 - связка master-detail - в режиме GridMode-false, SyncMode-true
Хочу отрефрешить master запись при изменениях в detail. Как это сделть без получения exception? (ставлю/снимаю сheck в detaile на OnChange стоит post DetailDataSet и Refresh MasterDataset).
Автор: Dronton2
Дата сообщения: 14.06.2007 13:28
drunk2

Цитата:
как firefox

Подсветить все - не пробовал,а вот переход на ближайшую запись, начинающуюся на указанный текст с подсветкой этого текста - работает. в cxGrid:
у колонки должно быть: myColumn.Options.IncSearch := True; и myView.OptionBehavior.IncSearch := True;
Автор: HalfLitre
Дата сообщения: 14.06.2007 13:28
Выяснил что мой вопрос не по теме данного топика.
С TDBGrid тоже самое, если при отрытом курсор сделать

Цитата:

procedure TfrmMain.btnEditClick(Sender: TObject);
begin
QueryStartTransaction; (здесь только begin work)
showmessage('ok');
QueryRollBack;; (здесь только rollback work)
end;

Начинаются ошибки при скролинге.
Автор: drunk2
Дата сообщения: 14.06.2007 14:06
Dronton2

Цитата:
myColumn.Options.IncSearch := True; и myView.OptionBehavior.IncSearch := True;
Не то. Для того, чтобы перейти на другую похожую запись надо жать Ctrl+стрелка вниз(забыл как кнопка называется, если она как нибудь называется) Если похожее буквосочетание есть в другом столбце то переход на него не происходит, а надо.
Автор: Dronton2
Дата сообщения: 14.06.2007 14:35
drunk2

Цитата:
Если похожее буквосочетание есть в другом столбце то переход на него не происходит, а надо.

ИМХО, только программно.
Можно воспользоваться TcxDataControllerSearch: myTableView.DataController.Search;
можно устроить цикл по колонкам и строкам и сравнивать каждое значение с искомым.
Автор: zver
Дата сообщения: 15.06.2007 18:50
Кто-нибудь знает как сделать в cxExtLookupComboBox фильтр по кажодму столбцу.
А то при установке у связанного cxGrid-a Filter в TRUE фильтр появляется, но ввести туда ничего нельзя (при нажатии комбо-бокс сразу закрывается)???
Автор: jicoff
Дата сообщения: 15.06.2007 19:39
zver

Если правильно понял, речь идет о ситуации, когда cxExtLookupComboBox непосредственно связан с cxGrid. А если попробовать cxGrid поставить на фрейм или другую форму, а уж его (ее) связать с cxExtLookupComboBox.
Автор: zver
Дата сообщения: 15.06.2007 20:02
Да впринципе можно показывать (и скрывать) пользователю cxGrid, но зачем тогда ввоще cxExtLookupComboBox?

Добавлено:
Просто хотелось бы использовать это во многих программах и следовательно максимально упростить программирование этого момента.
Автор: staspolozov
Дата сообщения: 16.06.2007 15:33
Кто нибудь знает как в Grid, сохранять и загружать состояния групп(свернуто-развернуто) в несколько уровней вложенности, а то при обновлении значений из базы данных, все сворачивается.
Автор: xokc
Дата сообщения: 16.06.2007 20:59
staspolozov
А вот собственно никак. Где-то тут раньше это уже обсуждалось.
Автор: Daeron
Дата сообщения: 18.06.2007 08:49
zver

Цитата:
Кто нибудь знает как в Grid, сохранять и загружать состояния групп(свернуто-развернуто) в несколько уровней вложенности, а то при обновлении значений из базы данных, все сворачивается.

Я делаю это ручками - прошелся по гриду, сохранил все состояния (свернуто/развернуто) и ID записи. ПОтом при открытии открываю то что было открыто раньше.
Автор: George_Lucky
Дата сообщения: 18.06.2007 09:03
Как в TcxDBVerticalGrid клавиатурой раскрывать и сворачивать ветви

Добавлено:
в TcxVerticalGrid это делается стрелкой вправо, влево...
Автор: Dronton2
Дата сообщения: 18.06.2007 10:39
zver
jicoff прав. Можно ещё поиграть с HitTest: определять, что мышью нажали в области фильтра, или на заголовке.
Как альтернативу, можно использовать TcxFilterControl.
Автор: saltmi1
Дата сообщения: 18.06.2007 14:17
Проблема с cxSpreadSheetBook и Stream
Господа товарищи, помогите…
MS Access. Таблица IZMERENIE и таблица CLIENTS, CLIENTS - master, IZMERENIE – detail. Связаны через ID который string. IZMERENIE-поле в Access Ole, в Delphi - Blob. Использую cxSpreadSheetBook.

Код:

procedure TIzmerenieForm.btnSaveClick(Sender: TObject);
var
BlobField: TField;
BS: TStream;
begin
With DM.IzmerenieT do
try
BlobField := FieldByName('IZMERENIE');
Insert;
BS := CreateBlobStream(BlobField,bmWrite);
cxSpreadBook.SaveToStream(BS);
finally
BS.Free;
end;


Как ни стараюсь, не работает. Ошибки не показывает, но таблица пустая. Самое смешное, что с другой таблицей тот-же код работает прекрасно. Отличие только в том. что та другая таблица отдельная - без мастера.

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182

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


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