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

» Использование DevExpress (часть 3)

Автор: PrWork1
Дата сообщения: 14.11.2009 18:56
Только начинаю пробовать.

Подскажите, плиз, как проще всего локализовать нужные мне компоненты? Нужен русский язык.
Автор: xokc
Дата сообщения: 15.11.2009 10:43
X11
А в других компонентах (cxImageList и т.д) работает?

PrWork1
Если речь идет о DevExpress тогда ищи в варезнике русские ресурсы для DevExpress.
Ну или так, например
hччp://yandex.ru/yandsearch?text=русские ресурсы для DevExpress
Автор: PrWork1
Дата сообщения: 15.11.2009 16:50
xokc

Спасибо, я думал у таких мощных компонет есть что -нибудь типа бросил на форму, выбрал в свойствах Русский и все!

Буду искать/разбираться.

(З.Ы. Смешно, запрос в яндексе 3-й строкой сверху этот пост и выдает.)
Автор: Graach
Дата сообщения: 15.11.2009 17:29
И еще один вопросик: как можно сохранить например в реестр свойство dxRibbon ShowTabGroups и кнопки QuickAccessToolbar и все. Без сохранения остальных баров dxBarManager? Если сохранять весь dxBarManager с помощью StoreInRegistry, то и свернутость групп сохраняется и тулбар, но при этом поскольку у меня динамически строятся тулбары всех групп им присваиваются названия по умолчанию, а не задаваемые.
Автор: vladman
Дата сообщения: 15.11.2009 20:53
PrWork1

Цитата:
я думал у таких мощных компонет есть что -нибудь типа бросил на форму, выбрал в свойствах Русский и все!

Используйте TcxLocalizer. Подробнее -
DevExpress Localizer - VCL Application Localization

Graach

Цитата:
как можно сохранить например в реестр свойство dxRibbon ShowTabGroups и кнопки QuickAccessToolbar и все

Для этого может подойти компонент cxPropertiesStore.
Автор: X11
Дата сообщения: 15.11.2009 21:35

Цитата:
А в других компонентах (cxImageList и т.д) работает?

да, только что в cxImageList добавил PNG изображение
Автор: Graach
Дата сообщения: 15.11.2009 21:36
vladman
Огромное спасибо, подошел компонент.
Автор: sldaac
Дата сообщения: 16.11.2009 08:59
Cryogen2003

Цитата:
Кстати на вскидку не помнишь, сколько жрет памяти девовский MemTable при большом количестве записей? Просто у kbmMemTable при Perfomance установленным в Fast и количестве записей примерно тысяч 50 - расход памяти около гига, если конечно Perfomance установить в Small - памяти жрет около 100 метров, но при этом еле-еле ворочается.


Как-то даже и не смотрел, максимум что приходилось подгружать тысяч 5 не больше.
Да и считаю, что для такого количества записей это перебор, надо использовать другие средства.
Автор: Cryogen2003
Дата сообщения: 16.11.2009 09:15
sldaac
Например что использовать?
Автор: sldaac
Дата сообщения: 16.11.2009 11:11
Cryogen2003

Вот и человек подтверждает,


Цитата:
TkbmMemTable давно использую
по мне так отлично работает


остально дело сугубо личное для каждого.
Автор: Cryogen2003
Дата сообщения: 16.11.2009 11:19
sldaac
НУ я просто спросил стоит ли переходить или просто добавлять для девовских гридов.
Просто в свое время была странная глюка в TkbmMemTable вместе с TDBGridEh. При выделении множества записей бывало так, что некоторые записи не помечались, не понятно почему. А когда перешел на TMemTableEh - все стало на свои места. А так как сейчас избавляюсь полностью от EhLib, как бы надеюсь опять на наступить на тоже самое.
Так разумеется мне тоже очень нравиться TkbmMemTable, но к сожалению есть не очень приятные воспоминания при его работу с TDBGridEh.

Тем более в принципе просто было интересно пощупать что-то новое
Автор: clear2121
Дата сообщения: 16.11.2009 11:31
Вопросик возник!
Пережил несколько версий Девок и каждый раз при компиляции требовались старые библиотеки. Чтоб не мучаться (проекты были небольшие), создавал новый проект и туда переносил код и формы.
А теперь проект большой и такой перенос займёт много времени. Но при компиляции старого проекта с новыми ДЕвками требуется старая библиотека. Поэтому проект не собирается.
Как мне поправить проект с минимальными телодвижениями?
С++ Билдер 2010, Девки 47.

СПАСИБО!
Автор: AvGSoft
Дата сообщения: 16.11.2009 11:35
Проблема с хинтами в трелиствьюве. Установил версию 5.47 при HeaderHints = true когда текст не помещается (типа Колонка, а на экране Кол...) наведении мышки хинт моргает как сумашедший, раньше такого не наблюдалось? Кто сталкивался помогите.

Добавлено:
просто отображался хинт на некоторое время и исчезал
Автор: volser
Дата сообщения: 16.11.2009 14:16
clear2121
Что значит требуется старая версия? Что так и говорит хочу старую версию?
Автор: clear2121
Дата сообщения: 16.11.2009 17:13
volser
ТОчно. Всё откомпилит и говорит - Ошибка. Не могу найти библиотеку Cx...CN.lib (где N номер предыдущей версии).
Автор: AvGSoft
Дата сообщения: 17.11.2009 11:00
Пиплы, насчет хинтов. у кого нибудь проблемы наблюдаются. в суппорте написано что мигание пофиксили в 47 релизе, а на деле в нем и вылезло. решение есть?

Добавлено:
Вопрос снят
Автор: brookson
Дата сообщения: 17.11.2009 17:18
Добрый вечер всем!

Скажите, натыкался кто-нибудь на такой вот глюк у dxMemData при удалении из него записей? Выдаётся ошибка List index out of bounds. Она возникает при удалении записи, при чём в отладчике смотрел: Recordcount <>0.
Ошибка возникает не всегда, только иногда - то чаще, то реже.

Пробовал бороться таким образом. Перед каждым удалением говорил dxMemData.First

Не помогает.
Нужно удалить ВСЕ записи из него. Больше никаких других методов не нашёл. Справка вообще бедная у него.
Автор: mdid
Дата сообщения: 17.11.2009 19:16
Драсте...вопрос такой я уже задавал и даже ответ получил но
подскажите плз...можно ли как то обращаться к данным GridBandedTableView1..напрмир по имени колонки?...ибо GridBandedTableView1.DataController.GetValue уж очень неудобное так как при удалении колонки меняются и номера колонок.

ответил data man
TableView.FindItemByName(const AName: string) и TableView.GetColumnByFieldName(const AFieldName: string) подойдут ?

но GridBandedTableView1.FindItemByName так и не понял что дальше а в GridBandedTableView1 нету GetColumnByFieldName...если можно не большой пример на основе GridBandedTableView как получить (и если возможно установить) значение по имени колонки...ибо опять удили пару колонок и писец...пол ночи менять нумерацию
ПС
работы куча и нету времени разбираться...поэтому и пошел "легким" путем через GetValue
Автор: volser
Дата сообщения: 17.11.2009 19:30
brookson
Как удаляете записи?
Автор: PrWork1
Дата сообщения: 17.11.2009 19:31
vladman

Спасибо, что-то вроде этого я и искал.
Автор: data man
Дата сообщения: 17.11.2009 19:46
mdid

Цитата:
в GridBandedTableView1 нету GetColumnByFieldName

Ну да, эта функция есть только в TcxGridDB*TableViews.

Цитата:
GridBandedTableView1.FindItemByName так и не понял что дальше

GridBandedTableView1.FindItemByName('MyColumn').EditValue := ...
Значение ячейки для текущей сфокусированной записи.
Автор: brookson
Дата сообщения: 17.11.2009 20:17
volser

Цитата:
Как удаляете записи?


Удалял по-разному. Последний вариент уже такой (но всё равно нерабочий):

Код: if dxMemDataServ.Active then begin
dxMemDataServ.First;
while not dxMemDataServ.Eof do begin
dxMemDataServ.First;
dxMemDataServ.Delete;
end;
end;
Автор: mdid
Дата сообщения: 17.11.2009 20:21
data man
шикаааарно....пасиб
Автор: data man
Дата сообщения: 17.11.2009 20:33
mdid
Только учтите, что если поменяете имена колонок, то функция вернет nil.
Так что если уверены, что имена не поменяются, то проверку на nil можно не делать.
Автор: X11
Дата сообщения: 17.11.2009 20:44

Цитата:
Удалял по-разному. Последний вариент уже такой (но всё равно нерабочий):

1. Удалять записи нужно всегда с конца набора данных.
2. Для удаления всех записей достаточно переоткрыть xMemData

Добавлено:

Цитата:
while not dxMemDataServ.BoF do begin
last;
Delete;
end;

и dxMemData тут вообще не при чём

Добавлено:
ой, перепутал, так нужно


Код: dxMemDataServ.last;
while not dxMemDataServ.BoF do dxMemDataServ.Delete;
Автор: brookson
Дата сообщения: 18.11.2009 09:05
X11
Закрыть / Открыть dxMemData не удалило записи, к большому сожалению. Может еще что-то надо.

А удаление с конца работает, спасибо!

Добавлено:
Нет, ошибку один раз еще поймал. И появился новый глюк. View, которое смотрит на этот dxMemData, не всегда отображает записи из него. Точнее - иногда с третьего раза, иногда со второго, а иногда сразу.
Что я делаю: Добавляю в него записи, ... удаляю, опять добавляю,... удаляю. И так много раз.
Вообще перестал понимать, что происходит.
Перед редактированием dxMemData вставляю

Код: dxMemData.disablecontrols;
tvServ.beginupdate;
....
tvserv.endupdate;
dxMemData.enablecontrols;
Автор: sldaac
Дата сообщения: 18.11.2009 10:49
brookson


Цитата:
tvServ.beginupdate;
....
tvserv.endupdate;

а это зачем??
VIEW какой используеш??
TcxGridDBTableViews.-??? или TcxGridTableViews.


Автор: f3ka
Дата сообщения: 18.11.2009 11:02
sldaac
похоже что по этим словам

Цитата:
View, которое смотрит на этот dxMemData

это TcxGridDBTableView
brookson
когда делается dxMemData.disablecontrols нет необходимости делать tvServ.beginupdate и tvserv.endupdate... думаю View тупит именно из-за этого...
Автор: brookson
Дата сообщения: 18.11.2009 11:10
sldaac
TcxGridDBTableViews
f3ka

Цитата:
когда делается dxMemData.disablecontrols нет необходимости делать tvServ.beginupdate и tvserv.endupdate... думаю View тупит именно из-за этого...


Этого и не было. Вставил, думал поможет

Добавлено:
Убрал vServ.beginupdate и tvserv.endupdate, всё то же самое.
Интересно: в осномном перестаёт отображать записи на 3-й раз.
Автор: sldaac
Дата сообщения: 18.11.2009 11:23
brookson

давай кусок проекта или форму, посмотреть... и еще версия девок...
покажин скрин настроек view, может он у тебя связан master-detail... фильт нигде не установлен

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081

Предыдущая тема: Delphi: tcp клиент в потоке


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