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

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

Автор: tanaseduard
Дата сообщения: 28.01.2011 15:06
kniazkinP

Можно через cxLocalization, в сборках девов есть переводчик, поищи там exe файл, он там обычно 1-2. Можешь добавить любой язык, и допереводить строки.
Автор: X11
Дата сообщения: 28.01.2011 15:07
С инсталлятором feandy идёт этот файл. Но, т.к. ты новичёк на форуме, то тебе этот инсталлятор не заполучить. Попробуй постучись к нему в ЛС и спросить хотя бы этот файл с переводом. Попытка - не пытка.
Автор: Hydroliskus
Дата сообщения: 28.01.2011 17:27
kniazkinP

Попробуй найти файл: DevExRus100Proc.ini и подставить его в компонент TcxLocalizer.

Вроде здесь:
http://www.sql.ru/forum/actualthread.aspx?tid=715724
Автор: kniazkinP
Дата сообщения: 28.01.2011 18:00
Спасибо Вам всем большое! Особенно Hydroliskus!!!
Автор: JohnSilver182
Дата сообщения: 30.01.2011 13:11
А не подскажите как границы у кнопки выделить , а то она сливается

Автор: ChSerg
Дата сообщения: 30.01.2011 13:58
JohnSilver182

Не надо тут тулбар делать. поставь обычные кнопки
Автор: JohnSilver182
Дата сообщения: 30.01.2011 14:25
ChSerg - А на кнопки ЦЕНТРАЛИЗОВАННО картинки неназначить через TcxImageList.
Автор: X11
Дата сообщения: 30.01.2011 15:26
Использую cxVerticalGrid, у одной из строк EditProperties = LookupComboBox.
ListOptions.SyncMode := True

Проблема в том, что когда я указываю значение строки:
colField_Type.Properties.Value := 11;
то в привязанном к этой строке датасете не происходит синхронизация.
Так и должно быть?

Добавлено:
Т.е. получается, что нужно делать так:
colField_Type.Properties.Value := FBN('ID_TDOP_ATRIBUTES_TYPES').Value;
TDOP_ATRIBUTES_TYPES.Locate('ID', FBN('ID_TDOP_ATRIBUTES_TYPES').Value, []);
Автор: JohnSilver182
Дата сообщения: 30.01.2011 15:34
А вот еще
В TcxGrid.TcxGridDBTableView.Filtering = True . Он фильтрует c учетом регистра . Как поменять что бы не учитывал ??

Добавлено:
Кстати Локализовал Девки , сам в экстазе !!


Код: dmv.cxLocalizer1.FileName:=pr.LocalPath +'conf\rus.ini';
dmv.cxLocalizer1.Active:=true;
dmv.cxLocalizer1.Locale:=1049;
Автор: marser
Дата сообщения: 30.01.2011 15:50
JohnSilver182

Цитата:
В TcxGrid.TcxGridDBTableView.Filtering = True . Он фильтрует c учетом регистра . Как поменять что бы не учитывал ??

with cxGrid1TableView1.DataController.Filter do Options := Options + [fcoCaseInsensitive];
Автор: ChSerg
Дата сообщения: 30.01.2011 15:52
JohnSilver182

ImageList.GetBitmap(Index, cxButton.Picture);
Автор: marser
Дата сообщения: 30.01.2011 16:40
X11

Цитата:
Использую cxVerticalGrid, у одной из строк EditProperties = LookupComboBox.
ListOptions.SyncMode := True

Проблема в том, что когда я указываю значение строки:
colField_Type.Properties.Value := 11;
то в привязанном к этой строке датасете не происходит синхронизация.
Так и должно быть?

Если следовать Вашей логике, то при проказе (или рефреше) cxVerticalGrid для каждой lookup ячейки делался бы DataSet.Locate (достаточно длительная операция)? На самом деле для показа лукапного текста используется или DataSet.Lookup, или поиск значения в cxLookupGrid. Синхронизация с DataSet происходит когда Вы выбираете (фокусируете) ручками запись в выпадающем гриде.
Автор: X11
Дата сообщения: 30.01.2011 19:22

Цитата:
Если следовать Вашей логике, то при проказе (или рефреше) cxVerticalGrid для каждой lookup ячейки делался бы DataSet.Locate

Ну да, а так мне ручками приходится это делать. Какая разница...
Автор: X11
Дата сообщения: 30.01.2011 23:25
То ли лыжи не едут....

Использую событие OnKeyPress у cxVerticalGrid.
Строка colTable_Name имеет строковый тип (string)
EditProperties установлено в TextEdit


Код:
procedure TfmDopAttributeEdit.vgDopAttribEditKeyPress(Sender: TObject;
var Key: Char);
begin
colTable_Name.Properties.Value := 't';
Автор: tatbesidovska
Дата сообщения: 31.01.2011 12:45
Вопрос такой: Есть gridView(Devexpress овский), с полем в которое нужно добавить документ (Excel, Word или любой другой) и сохранить в базе данных SQL. Как реализовать все это на C#, чтобы потом можно было просмотреть этот документ.
Автор: iliak87
Дата сообщения: 31.01.2011 17:01
Помогите разобраться с cxGrid, а именно как добавлять колонки не через costumize. У меня запрос формируется через TQuery и его текст меняется функцией Format() (чек боксом набирается доп. набор отображаемых данных). То есть мне нужно менять набор колонок в режиме runtime.
Если cxGrid такое не умеет, посоветуйте другую, удобную грид (про TDBGrid знаю)
Автор: TechnoDreamer
Дата сообщения: 31.01.2011 18:26
iliak87, в хелпе есть:

Код:
var
ADBColumn: TcxGridDBColumn;
//...
ADBColumn := tvPersons.CreateColumn;
ADBColumn.DataBinding.FieldName := 'FIRSTNAME';
ADBColumn.Name := 'tvPersonsFIRSTNAME';
Автор: ChSerg
Дата сообщения: 31.01.2011 19:25
iliak87

Вот тут все найдете:
http://www.devexpress.com/Support/Center/
Автор: AlexCoRu
Дата сообщения: 31.01.2011 21:56
Если у TcxGridDBTableView OptionsSelections.CellSelect := True, то в навигаторе кнопка Edit всегда неактивана и свойство Options.Behavior.ImmediateEditor получается ненужно. Вообще-то, непонятно назначение этой кнопки Navigator.Edit.
Хотелось бы реализовать:
- кнопка Navigator.Edit активна когда DataSet в dsBrowse;
- после нажатия на эту кнопку можно было бы редактировать значения в ячейках, т.е. OptionsSelections.CellSelect принимал значение True.
Это как-то можно реализовать без своего обработчика?
Автор: marser
Дата сообщения: 01.02.2011 07:13
AlexCoRu

Цитата:
Хотелось бы реализовать:
- кнопка Navigator.Edit активна когда DataSet в dsBrowse;
- после нажатия на эту кнопку можно было бы редактировать значения в ячейках, т.е. OptionsSelections.CellSelect принимал значение True.
Это как-то можно реализовать без своего обработчика?

Думаю что нет. Придется создавать свои классы наследники TcxNavigatorControlButtons и TcxNavigator. Что-то вроде этого

Код: type
TMyNavigatorControlButtons = class(TcxNavigatorControlButtons)
protected
function GetButtonEnabled(ADefaultIndex: Integer): Boolean; override;
end;

TMyNavigator = class(TcxNavigator)
protected
function GetButtonsClass: TcxNavigatorControlButtonsClass; override;
end;

implementation

function TMyNavigatorControlButtons.GetButtonEnabled(ADefaultIndex: Integer): Boolean;
begin
Result := inherited GetButtonEnabled(ADefaultIndex);
.....
end;

function TMyNavigator.GetButtonsClass: TcxNavigatorControlButtonsClass;
begin
Result := TMyNavigatorControlButtons;
end;
Автор: infomSB
Дата сообщения: 01.02.2011 12:20
iliak87
Попробуйте вот так:
cxGrid1DBTableView1.DataController.CreateAllItems;

Создадутся все колонки, если же нужно создать только отсутствующие то вот так:
cxGrid1DBTableView1.DataController.CreateAllItems(True);
Автор: tatbesidovska
Дата сообщения: 01.02.2011 14:01
подскажите, есть gridView1(Devexpress овский)-родительская таблица, gridView2 -дочерняя таблица, при загрузке формы, дочерняя таблица скрыта, т.е закрытый "плюсик" у родительской таблицы, как сделать, чтобы этот плюсик при открытии формы был всегда открытым(т.е дочерняя таблица была открыта), спасибо
Автор: marser
Дата сообщения: 01.02.2011 14:23
tatbesidovska
На событие формы OnShow:
gridView1.ViewData.Records[Index].Expanded := True, или gridView1.ViewData.Expand, или
gridView1.DataController.Groups.FullExpand
Автор: tatbesidovska
Дата сообщения: 01.02.2011 14:49

Цитата:
gridView1.DataController.Groups.FullExpand
-на C# это выглядит так: gridView1.ExpandAllGroups(); но открываются именно группировка по столбцам
Автор: marser
Дата сообщения: 01.02.2011 15:03
tatbesidovska
Вы правы (невнимательно прочитал вопрос), это для группировки.

Добавлено:
gridView1.ViewData.Records[Index].Expanded, gridView1.ViewData.Expand - для Master-Detail, gridView1.DataController.Groups.FullExpand - для группировки
Автор: infomSB
Дата сообщения: 01.02.2011 15:16
tatbesidovska
вот тут есть то что надо
http://documentation.devexpress.com/#WindowsForms/CustomDocument739
Автор: tatbesidovska
Дата сообщения: 01.02.2011 15:40
infomSB, спасибо!
Автор: iliak87
Дата сообщения: 01.02.2011 16:58
TechnoDreamer
ChSerg

спасибо, разобрался.

Добавлено:
Еще один вопросик - как проверить существование определенной колонки в таблице cxGrid, например по названию? получается накопление одинаковых колонок и что бы избежать этого нужно ее удалить если она создана. Спасибо!
Автор: marser
Дата сообщения: 01.02.2011 18:56
iliak87

Цитата:
Еще один вопросик - как проверить существование определенной колонки в таблице cxGrid, например по названию?

По названию чего? Если по имени колонки, то cxGrid1TableView1.FindItemByName(AName), а если по имени поля (FieldName), то нужно функцию написать:

Код: function ColumnExists(AFieldName: string): Boolean;
var
I: Integer;
begin
for I := 0 to cxGrid1DBTableView1.ColumnCount - 1 do
if CompareText(cxGrid1DBTableView1.Columns[I].DataBinding.FieldName, AFieldName) = 1 then
begin
Result := True;
Exit;
end;
Result := False;
end;
Автор: X11
Дата сообщения: 01.02.2011 19:35
Извините за повтор, но проблема всё ещё актуальна.

Использую событие OnKeyPress у cxVerticalGrid.
Строка colTable_Name имеет строковый тип (string)
EditProperties установлено в TextEdit



Код: procedure TfmDopAttributeEdit.vgDopAttribEditKeyPress(Sender: TObject;
var Key: Char);
begin
colTable_Name.Properties.Value := 't';

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211

Предыдущая тема: Помогите пожалуйста с блокировкой клавиатуры и мышки


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