Комрады, кто встречал или в курсе как добавить свою кнопку рядом с кнопкой хелп в риббоне.
» Использование DevExpress (часть 3)
Подскажите как узнать например ID (уникальный номер в таблице) в помеченных (выделеных с помощью select) строках TcxGrid
SIgor33
может быть так?
Код: with <TcxCustomTableView>.Controller do
for i := 0 to SelectedRecordCount - 1 do
SelectedRecords[i].RecordIndex;
может быть так?
Код: with <TcxCustomTableView>.Controller do
for i := 0 to SelectedRecordCount - 1 do
SelectedRecords[i].RecordIndex;
f3ka
Цитата:
В принципе так а в догонку такой вопрос
у меня в таблице не колонки ID а базе данных есть мне бы хотелось получить данные выделенных строк этого поля. Подскажи?
Цитата:
может быть так?
В принципе так а в догонку такой вопрос
у меня в таблице не колонки ID а базе данных есть мне бы хотелось получить данные выделенных строк этого поля. Подскажи?
добавь колонку в cxGrid и сделай её невидимой
Коллеги такой вопрос.. Есть TcxDBTreeList. В run-time создаю несколько колонок в зависимости от необходимости. Возможно ли штатными средствами сохранять инфу, о том, какие колонки были созданы (отображены) в последней сессии?
VadimLou
Не хотелось бы. А иного способа нет?
Не хотелось бы. А иного способа нет?
SIgor33
к сожалению о существовании этого поля должен знать грид... иначе только прикручивание велосипеда поможет (типа какого нить Locate или Lookup для датасета но номеру RecordIndex), но думаю что это очень плохой путь
к сожалению о существовании этого поля должен знать грид... иначе только прикручивание велосипеда поможет (типа какого нить Locate или Lookup для датасета но номеру RecordIndex), но думаю что это очень плохой путь
f3ka
А grid знает свой datasource значит все же возможно как то обратиться ао имени поля
А grid знает свой datasource значит все же возможно как то обратиться ао имени поля
SIgor33
for I := 0 to <GridDBTableView>.Controller.SelectedRecordCount - 1 do
begin
with <GridDBTableView>.DataBinding.DataSource.DataSet do
begin
RecNo := <GridDBTableView>.Controller.SelectedRecords[I].RecordIndex + 1;
<VALUE> := FieldByName(<FieldName>).Value;
end;
end;
for I := 0 to <GridDBTableView>.Controller.SelectedRecordCount - 1 do
begin
with <GridDBTableView>.DataBinding.DataSource.DataSet do
begin
RecNo := <GridDBTableView>.Controller.SelectedRecords[I].RecordIndex + 1;
<VALUE> := FieldByName(<FieldName>).Value;
end;
end;
f3ka
спасибо за помощь
спасибо за помощь
Meister Floh
Цитата:
Использовать свойство Tag у колонок и помечать нужные специальным кодом, например, 0 -- стандартные колонки, 1 -- динамически созданные.
Цитата:
Коллеги такой вопрос.. Есть TcxDBTreeList. В run-time создаю несколько колонок в зависимости от необходимости. Возможно ли штатными средствами сохранять инфу, о том, какие колонки были созданы (отображены) в последней сессии?
Использовать свойство Tag у колонок и помечать нужные специальным кодом, например, 0 -- стандартные колонки, 1 -- динамически созданные.
У cxBarEditItem и dxBarEdit свойство Width не реагирует на изменения это баг или я чего-то не догоняю ?
народ, помогите. или я туплю где-то или не знаю ))) в общем не могу поставить devexpress 45 на делфи 2009. пробовал ставить на двух машинах, на одной виста, на другой хр. не встают ни там, ни там. стоят апдейты на делфи 1 и 2. проблема в чем: установка вроде проходит, но не компилится. и при запуске делфи выдает ошибки что не найдены файлы bpl. искал их поиском в корневом диске - нет таких файлов. что делать не знаю. подскажите в чем траблы?
Может видео уроки в шапку добавить? http://tv.devexpress.com/
AvGSoft
Цитата:
Есть пару дискуссий на эту тему
_http://www.devexpress.com/Support/Center/p/CQ47888.aspx
_http://www.devexpress.com/Support/Center/p/CS51420.aspx
Цитата:
Комрады, кто встречал или в курсе как добавить свою кнопку рядом с кнопкой хелп в риббоне.
Есть пару дискуссий на эту тему
_http://www.devexpress.com/Support/Center/p/CQ47888.aspx
_http://www.devexpress.com/Support/Center/p/CS51420.aspx
Коллеги, доброго времени суток! Помогите, а то уже всё изрыл, всё перекопал, всё перепробовал.
C++Builder2009? QuantumGrid 6, FIBPlus.
Распространенная задачка:
Многоуровневый cxGrid:
Level1.DBBandedTableView1
Leve1_1.DBBandedTableView1_1
Level2.DBBandedTableView2
Level2_1.DBBandedTableView2_1
Level3.DBBandedTableView3
Level3_1.DBBandedTableView3_1
Level3_2.DBBandedTableView3_2
Level3_3.DBBandedTableView3_3
Level3_3_1.DBBandedTableView3_3_1
Въюхи уровня 3_х подключаются в динамике.
В общем классический mastr-detail.
Добавление записей производится "руками", т.е. FIBDataSet1->Append();
Если у master нет detail, то новая запись подскакивает к master, у которого уже есть последняя подчиненная запись. по команде Post(), запись встает на нужное место.
Как заставить новую подчиненную запись появляться относительно выбранного mster-а?
Итак делал:
TcxCustomGridRecord *AMasterRec;
TcxCustomGridRecord *ADetailRec;
AMasterRec = ((TcxCustomGridTableView*)DBBandedTableView1_1)->MasterGridRecord; // возвращает NULL
DBBandedTableView1->DataController->GetDetailDataController(AMasterRec->RecordIndex, 0)->Append();
ADetailRec = AMasterRec->GetLastFocusableChild(false);
ADetailRec->Focused = true;
C++Builder2009? QuantumGrid 6, FIBPlus.
Распространенная задачка:
Многоуровневый cxGrid:
Level1.DBBandedTableView1
Leve1_1.DBBandedTableView1_1
Level2.DBBandedTableView2
Level2_1.DBBandedTableView2_1
Level3.DBBandedTableView3
Level3_1.DBBandedTableView3_1
Level3_2.DBBandedTableView3_2
Level3_3.DBBandedTableView3_3
Level3_3_1.DBBandedTableView3_3_1
Въюхи уровня 3_х подключаются в динамике.
В общем классический mastr-detail.
Добавление записей производится "руками", т.е. FIBDataSet1->Append();
Если у master нет detail, то новая запись подскакивает к master, у которого уже есть последняя подчиненная запись. по команде Post(), запись встает на нужное место.
Как заставить новую подчиненную запись появляться относительно выбранного mster-а?
Итак делал:
TcxCustomGridRecord *AMasterRec;
TcxCustomGridRecord *ADetailRec;
AMasterRec = ((TcxCustomGridTableView*)DBBandedTableView1_1)->MasterGridRecord; // возвращает NULL
DBBandedTableView1->DataController->GetDetailDataController(AMasterRec->RecordIndex, 0)->Append();
ADetailRec = AMasterRec->GetLastFocusableChild(false);
ADetailRec->Focused = true;
G787
Цитата:
Скорее всего баг:
_http://www.devexpress.com/Support/Center/p/S131121.aspx
_http://www.devexpress.com/Support/Center/p/Q209214.aspx
Но, заметил такую особенность. Если создать, например, TdxBarEdit, и изменять его размер путем изменения свойства Width в Object Inspector (либо в рантайме), то все работает верно. Но как только изменить размер с помощью мыши (дизайнтайм) - значение свойства Width не изменяется, и изменение значений свойства Width (как в рантам так и в дизайнтайм) не приводит к верной визуализации объекта. Если удалить этот объект с панели, а затем заново его туда поместить, то возможность изменения размера через Object Inspector восстанавливается. Это же относится и к cxBarEditItem.
Цитата:
У cxBarEditItem и dxBarEdit свойство Width не реагирует на изменения это баг или я чего-то не догоняю ?
Скорее всего баг:
_http://www.devexpress.com/Support/Center/p/S131121.aspx
_http://www.devexpress.com/Support/Center/p/Q209214.aspx
Но, заметил такую особенность. Если создать, например, TdxBarEdit, и изменять его размер путем изменения свойства Width в Object Inspector (либо в рантайме), то все работает верно. Но как только изменить размер с помощью мыши (дизайнтайм) - значение свойства Width не изменяется, и изменение значений свойства Width (как в рантам так и в дизайнтайм) не приводит к верной визуализации объекта. Если удалить этот объект с панели, а затем заново его туда поместить, то возможность изменения размера через Object Inspector восстанавливается. Это же относится и к cxBarEditItem.
Цитата:
Может видео уроки в шапку добавить? http://tv.devexpress.com/
сайт конечно хороший, но где там искать?
Цитата:
Может видео уроки в шапку добавить? http://tv.devexpress.com/
возможно он и хороший, но по VCL там вроде я ничего не нашел...
asdnsd
Цитата:
ткни пальцем где там показано как ставить девки. да и как ставить их я знаю, до этого ставил и не раз. а вот версию 45 не получается поставить
Цитата:
Может видео уроки в шапку добавить? http://tv.devexpress.com/
ткни пальцем где там показано как ставить девки. да и как ставить их я знаю, до этого ставил и не раз. а вот версию 45 не получается поставить
asdnsd
Цитата:
Мы как-то уже обсуждали, что
Цитата:
К сожалению, Devexpress опубликовали только 4 видео относящихся к VCL. Предлагаю информировать о появлении новых роликов по продуктам VCL.
Ссылки на существующие:
_http://tv.devexpress.com/VCLRibbonControl.movie
_http://tv.devexpress.com/ExpressLayoutCreateCustomize.movie
_http://tv.devexpress.com/VCLTreeListCreateCheckAndRadioGroups.movie
_http://tv.devexpress.com/VCLLayoutCustomizeLayoutViews.movie
Цитата:
Может видео уроки в шапку добавить?
Мы как-то уже обсуждали, что
Цитата:
Эта ветка содержит 99,9% обсуждений именно VCL.
К сожалению, Devexpress опубликовали только 4 видео относящихся к VCL. Предлагаю информировать о появлении новых роликов по продуктам VCL.
Ссылки на существующие:
_http://tv.devexpress.com/VCLRibbonControl.movie
_http://tv.devexpress.com/ExpressLayoutCreateCustomize.movie
_http://tv.devexpress.com/VCLTreeListCreateCheckAndRadioGroups.movie
_http://tv.devexpress.com/VCLLayoutCustomizeLayoutViews.movie
vladman
Похоже этот функционал доступен только в DXperience, а на VCL это выкрутить сложно
Похоже этот функционал доступен только в DXperience, а на VCL это выкрутить сложно
AvGSoft
Цитата:
Что вы имеете ввиду под "этот функционал"?
Цитата:
Похоже этот функционал доступен только в DXperience, а на VCL это выкрутить сложно
Что вы имеете ввиду под "этот функционал"?
AvGSoft
Цитата:
В роликах в явную показан Delphi!
Цитата:
Похоже этот функционал доступен только в DXperience, а на VCL это выкрутить сложно
В роликах в явную показан Delphi!
Не бейте, я опять про cxLocalizer и фильтры в заголовках столбцов. Две программы, два грида, у каждого есть 1-2 поля типа CheckBox. Ini-файл с переводом один и тот же. У одной программы вижу Да и Нет в выпадающем списке, а у другой True и False, хотя остальное на русском.
Dev43
Добавлено:
Открываю конструктор фильтров грида, там тоже True и False
Dev43
Добавлено:
Открываю конструктор фильтров грида, там тоже True и False
Цитата:
Открываю конструктор фильтров грида, там тоже True и False
так а что неможеш поменять DisplayChecked на Да и D*Uncheked на Нет, и будет тебе счастие
Еще две достаточно приятные новости от DevExpress:
1. VCL Application Wide Skins-Themes - Coming Soon to Your Favorite CodeGear IDE. "A total of 5 new skins will be introduced (including: HighContrast, Seven, Sharp, Foggy and DarkRoom)."
2. PDFs, VCL applications and more Revolutionary UIs. "ExpressPrinting System™ v4 which should be available as a beta in Build 46". "With ExpressPrinting System v4 you will not only be able to print complex controls with ease, you can generate PDF files from the result."
1. VCL Application Wide Skins-Themes - Coming Soon to Your Favorite CodeGear IDE. "A total of 5 new skins will be introduced (including: HighContrast, Seven, Sharp, Foggy and DarkRoom)."
2. PDFs, VCL applications and more Revolutionary UIs. "ExpressPrinting System™ v4 which should be available as a beta in Build 46". "With ExpressPrinting System v4 you will not only be able to print complex controls with ease, you can generate PDF files from the result."
Цитата:
так а что неможеш поменять DisplayChecked на Да и D*Uncheked на Нет, и будет тебе счастие
В том то и дело, что везде свойства одинаковые, почему локализер не переводит. Ведь он должен переводить. В одной программе переводит, а в другой нет.
Есть грид с группировками. Группировки делает сам пользователь. Нужно чтобы сворачивание/разворачивание групп делалось не до записей а до последнего сгруппированного уровня.
Добавлено:
Нашел на офсайте как сделать. Раскрывает группировки до указанного уровня:
procedure ExpandViewGroups(AView: TcxGridTableView; ALevel: Integer);
var
I: Integer;
begin
AView.BeginUpdate;
try
AView.DataController.Groups.FullExpand;
for I := AView.DataController.RowCount - 1 downto 0 do
if AView.DataController.GetRowInfo(I).Level > ALevel then
AView.DataController.Groups.ChangeExpanding(I, False, True);
finally
AView.EndUpdate;
end;
end;
Добавлено:
Нашел на офсайте как сделать. Раскрывает группировки до указанного уровня:
procedure ExpandViewGroups(AView: TcxGridTableView; ALevel: Integer);
var
I: Integer;
begin
AView.BeginUpdate;
try
AView.DataController.Groups.FullExpand;
for I := AView.DataController.RowCount - 1 downto 0 do
if AView.DataController.GetRowInfo(I).Level > ALevel then
AView.DataController.Groups.ChangeExpanding(I, False, True);
finally
AView.EndUpdate;
end;
end;
Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
Предыдущая тема: Delphi: tcp клиент в потоке
Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.