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

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

Автор: X11
Дата сообщения: 26.02.2011 17:19
Код DFM

Цитата:
У TcxDBCheckComboBox есть 4 варианта выбора

я про это знаю, ты можешь сделать тестовый проект, где видно, что TcxDBCheckComboBox заполняется. Ты вопрос, наверное, не понял.
Повторяю. Я подключил к датасету TcxDBCheckComboBox, открыл датасет, но TcxDBCheckComboBox ПУСТОЙ.
Автор: tanaseduard
Дата сообщения: 26.02.2011 20:07
X11
Я же в предыдущем скрипе показал чтоб народного его надо заполнить свойство items. Сам по себе этот компонент сохраняет выдранное значение в датасете. Заполнять его надо вручную. Он сам не формирует список из бд.


Добавлено:
Разожгись выложу завтра. Я сейчас в пив баре.

Добавлено:
Сори имелось ввиду исходные коды. IPad исправил текст.
Автор: JackRoto
Дата сообщения: 27.02.2011 00:33
Доброго времени суток!
Подскажите пожалуйста, как сделать следующее:

Есть продукты имеющие аттрибуты: Название, кол-во, поставщик, дата, ....

Свойства каждого, меняются с помощью VerticalGrid (т.к. у него можно для каждой строки выбирать свой InplaceEditor).

Если пользователь выберет для редактирования сразу несколько продуктов, то нужно - скрыть строки, которые не могут менятся при множественном выделении и оставить которые могут (это легко), но вот задача добавить третью колонку с CheckBox, где пользователь явно указывает, какой аттрибут он хочет поменять для множественного выделения, а какой оставить без изменения.

Другие гриды не предлагать, пожалуйста, у них нет разных InplaceEditor для разных строк в одной колонке. И MultiEditor тоже не подходит, выглядит некрасиво Вот если бы третья колонка с CheckBox была перед колонкой с названием!
Автор: X11
Дата сообщения: 27.02.2011 11:20

Цитата:
Я же в предыдущем скрипе показал чтоб народного его надо заполнить свойство items

Обычно DB компоненты заполняются автоматически. Иначе зачем свойства Datasource и Datafield?

Добавлено:
Свойство Items я и сам могу заполнить и для этого я испоьзую обычные, не DB компоненты. А зачем тогда TcxDBCheckComboBox, если есть TcxCheckComboBox
Автор: TechnoDreamer
Дата сообщения: 27.02.2011 11:34
X11, ну тебе ж вроде ответили. Этот компонент пишет в одно поле данные выбора. Отличаются они тем же, чем Edit от DBEdit, один запостит данные в базу сам, другой нет...


Цитата:
cvfInteger - создает битовую маску из выбора
cvfCaptions - создает строку с выбранными данными, разделение через точку с запятой
cvfIndices - индексы, старт точка с запятой , разделение запятыми
cvfStatesString - строка вида 010101 - если на позиции 1 значит элемент выбран.


Ты свою таблицы распиши. Что ты хочешь получить то? Что то у меня подозрения что тебе таблица связей надо...
Автор: X11
Дата сообщения: 27.02.2011 11:35
Каких связей? Не понял.

Мне нужно, что бы TcxDBCheckComboBox заполнился автоматически, как обычный TcxDBComboBox. ВСЁ!
Автор: TechnoDreamer
Дата сообщения: 27.02.2011 13:43
X11
Заполнился чем? Какими данными? Откуда он их взять должен? Куда записать?
Автор: X11
Дата сообщения: 27.02.2011 13:47
Как откуда, ведь TcxDBCheckComboBox подключается к датасету. Или для чего он подключается?
Я так думаю, что датасет - это источник данных? Как У lookupCombobox? Или нет?
Автор: V1s1ter
Дата сообщения: 27.02.2011 13:52
X11
Я могу ошибится, плотно с этим компонентом не работал, но вот два момента:
1) Задача компонента дать пользователю выбрать нужный ответ из множества значений заданных в Properties.Items
2) Поместить выбор пользователя в DataBinding.DataSource в поле DataBinding.DataField

Теперь, если вопрос "почему Properties.Items не заполняется возможными вариантами?", то ответ прост и не должен ибо нет своиств в этом компоненть которые позволяли бы указать источник возможных вариантов для Properties.Items.

Но если вопрос "почему компонент не отображает текущее значение поля DataBinding.DataField в DataBinding.DataSource?", то ответ не знаю, но должен отображать.


Цитата:
Каких связей? Не понял.

Это имеется в виду указанный мной вариант 1 когда есть возможность в компоненте задать источник возможных вариантов ответов. Яркий пример DBLookupCombo - своиства DataSource и DataField отвечает куда писать ответ пользователя, а своиства LookupSource и LookupField определяют источник возможных вариантов, который и назвали таблицей связи или таблицей справочником.

Если ничего не перепутал, то так.
Автор: TechnoDreamer
Дата сообщения: 27.02.2011 13:52
У тебя DataField равен ID - т.е. компонент редактирует это поле, а не берет из него список значений. Как и во всех других.

P.S. V1s1ter всё правильно написал.
Автор: X11
Дата сообщения: 27.02.2011 14:05
Всё, я понял. Нужно самому наполнять. Источника данных нет.
Автор: TechnoDreamer
Дата сообщения: 27.02.2011 14:08
Более того, этот компонент (если я правильно понимаю) - подходит только для фиксированного и неизменного списка Items.
Автор: killerbeanjeka
Дата сообщения: 27.02.2011 16:21
Помогите пожалуйста, вопрос следующий: есть главная форма с dxRibbon, также есть дочерняя форма с панелью (dxBar). Возможно ли какиим либо образом присоединить панель дочерней формы в Риббону главной?
Автор: xokc
Дата сообщения: 27.02.2011 20:05
killerbeanjeka
Честно говоря не очень понятно, что именно нужно сделать? Если то, что на рисунке, то надо:
1. На главную форму добавить пустой TdxBarDockControl
2. Сделать у ChildForm.Bar.DockedDockControl := dxBarDockControl
Автор: BlackVetal
Дата сообщения: 28.02.2011 05:28
killerbeanjeka
нельзя - можно соединять только ribbon панели.
Автор: mdid
Дата сообщения: 28.02.2011 08:28
народ подскажите плз такую штуку...а то уже задолбался...ложу на форму dxBarManager..создаю 2 панели и помещаю их на одной строке..а теперь вопрос...как управлять позицией панели?
первая панель у меня статусная...вторая с батонами "сформировать" "закрыть" и "печать"...хочу что бы при ресайзе панель с батонами автоматом липла к правой части формы...но вот что то ни позиций ни ширины я тут не вижу
спасибо
Автор: tanaseduard
Дата сообщения: 28.02.2011 08:52
mdid
Использую dxDockControl. Ему можно присваивать панели, а его в свою очередь выставлять куда тебе нужно.
Автор: tatbesidovska
Дата сообщения: 28.02.2011 09:29
Подскажите кто-нить, как в XtraGrid добавить строку между строк, например есть выделенная строка, а вставить новую строку нужно над ней, спасибо
Автор: mdid
Дата сообщения: 28.02.2011 10:01
tanaseduard
пасиб..попробую
Автор: SIgor33
Дата сообщения: 28.02.2011 11:09
никак не найду где включается отображение кнопки help в ribbon панели. Подскажите
Автор: BlackVetal
Дата сообщения: 01.03.2011 06:11
SIgor33
Насколько я знаю (опыт правда не большой) если риббон создан не мастером - то кнопку "help" ручками создавать и вставлять в панель бысрого доступа или еще куда нужно.
Автор: vladman
Дата сообщения: 01.03.2011 09:29
SIgor33

Цитата:
никак не найду где включается отображение кнопки help в ribbon панели. Подскажите

Написать обработчик onHelpButtonClick вашего dxRibbon.
Автор: HowToDoIt
Дата сообщения: 02.03.2011 17:26
Помогите, сил больше нет в одного биться над этой проблемой, поиск тоже не помог!
Создаю список значений для фильтра колонки MyColumn, всё вроде бы прекрасно, НО нету МультиСелекта в списке фильтра, не могу отмечать сразу несколько значений, только по одному!

Пробую по другому, создаю с fviValue (вместо fviUser), Мультиселект появился, НО тогда я не могу указать условие foLike (OnUserFiltering только для fviUser), по умолчанию в таком случае значение foEqual. Опять тупик! Как быть?? Как умолчания изменить, либо Мультиселект включить?!?

http://img87.imageshack.us/img87/6218/filterh.jpg


Код: procedure TFZayavList.cxGridDBMyColumnGetFilterValues(Sender: TcxCustomGridTableItem; AValueList:TcxDataFilterValueList);
begin
while AValueList.Count > 2 do AValueList.Delete(2);
for i:=0 to MyList.Count-1 do AValueList.Add(fviUser, '*'+MyList.Strings[i]+'*', MyList.Strings[i] , True);
end;

procedure TFZayavList.cxGridDBMyColumnUserFiltering(Sender: TcxCustomGridTableItem; const AValue: Variant;const ADisplayText: String);
begin
Sender.DataBinding.AddToFilter(nil, foLike, AValue,ADisplayText);
end;
Автор: Klaypeda
Дата сообщения: 02.03.2011 18:01
Подскажите, пожалуйста! В TreeList как выровнять ширину столбцов по содержимому? Все обшарила - не могу найти. Заранее благодарна!

Добавлено:

Цитата:
народ подскажите плз такую штуку...а то уже задолбался...ложу на форму dxBarManager..создаю 2 панели и помещаю их на одной строке..а теперь вопрос...как управлять позицией панели?
первая панель у меня статусная...вторая с батонами "сформировать" "закрыть" и "печать"...хочу что бы при ресайзе панель с батонами автоматом липла к правой части формы...но вот что то ни позиций ни ширины я тут не вижу
спасибо

Если я правильно поняла мысль, то, возможно, поможет свойство бара Offset - http://documentation.devexpress.com/#WindowsForms/DevExpressXtraBarsBar_Offsettopic

Например, когда создаешь менюшки в маленькой форме, потом форме даешь свойство быть максимальной, и все менюшки между собой на небольшом расстоянии оказываются, растопыриваются. Некрасиво. Для этого у каждой менюшки надо поставить Offset = 0. Если нужно что бы к правой части липла - управляйте этим же свойством.

Извини, если неправильно поняла вопрос.


Добавлено:
Точнее Offset - это расстояние между менюшками. Наверное не подойдет...
Автор: Czechoslovak
Дата сообщения: 03.03.2011 09:33
Klaypeda


Цитата:
Подскажите, пожалуйста! В TreeList как выровнять ширину столбцов по содержимому? Все обшарила - не могу найти. Заранее благодарна!


Используй метод ApplyBestFit
Автор: GeXamin
Дата сообщения: 03.03.2011 15:10
Ребята помогите, уже с ума схожу... Заполняю dxDBTreeView. Усть таблица : ID, PARENTID, Name, imageindex. Кидаю в keyfield=ID, ParentField=PARENTID, ListField=Name.

Получается : http://img696.imageshack.us/f/61132325.png/

Должно отображаться дерево подразделений.
Проблема в том что все записи после "ДІЛЬНИЦЯ ЗАСОБІВ МАСОВОЇ ІНФОРМАЦІЇ" - это все вложенные записи, т.е. имеют ID и PARENTID, а записи выше имеют только ID. Как показать в корнях деревьев только те, у которых есть только ID, а остальные вложены в них ..... Спс.
Автор: FunCode
Дата сообщения: 03.03.2011 15:56
GeXamin
Цитата:
Проблема в том что все записи после "ДІЛЬНИЦЯ ЗАСОБІВ МАСОВОЇ ІНФОРМАЦІЇ" - это все вложенные записи, т.е. имеют ID и PARENTID, а записи выше имеют только ID. Как показать в корнях деревьев только те, у которых есть только ID, а остальные вложены в них ..... Спс.

Если все так как написано - то должно работать ... Для дальнейшего обсуждения приведите значения записей (id, parentid ...), которые неправильно отображаются, и еще RootValue чему равно ?
Автор: GeXamin
Дата сообщения: 03.03.2011 16:54
RootValue -на что оно влияет и к чему его крутить?
Автор: TechnoDreamer
Дата сообщения: 03.03.2011 17:33

Цитата:
а записи выше имеют только ID

Для корневых записей делаешь ParentID=-1 (к примеру) и RootValue:=-1
Автор: sldaac
Дата сообщения: 03.03.2011 20:39
Приветстую всех.
подскажите, по сумированию колонки в View


Uploaded with ImageShack.us

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211

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


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