Спасибо большое, marser, действительно, всё оч. логично. Буду пробовать.
» Использование DevExpress (часть 4)
Граждане, подскажите как сделать чтобы
в гриде после ввода значения в ячейку и нажатия Enter
курсор перескакивал на следующую запись.
Сенк.
ПыСы. Раньше юзал EhLib и тяжело переходить на девы.
в гриде после ввода значения в ячейку и нажатия Enter
курсор перескакивал на следующую запись.
Сенк.
ПыСы. Раньше юзал EhLib и тяжело переходить на девы.
Посмотри свойства OptionBehavior
Оно на след. колонку перескакивает
а мне нужно на след. запись.
Но спасибо конечно.)
Уже нашел.
а мне нужно на след. запись.
Но спасибо конечно.)
Уже нашел.
Что нашёл. А поделиться с другими не позволяют эгоистичесие помыслы? Тогда форумы не для таких как ты.
Попробуй обработать Enter в событии OnEditKeyDown.
Попробуй обработать Enter в событии OnEditKeyDown.
Люди а как меняется
цвет подсветки текущей строки?
Добавлено:
Цитата:
Так и сделал.
цвет подсветки текущей строки?
Добавлено:
Цитата:
Попробуй обработать Enter в событии OnEditKeyDown.
Так и сделал.
mironico
Цитата:
Styles.Selection.Color
Насчет моей проблемы (нельзя стрелками перемещаться по VerticalGrid):
нашлась причина, но пока не найдено решение.
Перемещение не работает так как у меня DLL-ка, в EXE-версии навигация стрелками по гриду работает.
У кого есть какие-нибудь мысли по моей проблеме?
Прямо мистика. У меня получилось сделать так, чтобы всё заработало, но только при условии, что моя DLL-ка вызывается после другой определенной DLL-ки. Буду рыться в ней и искать в чём подвох.
Цитата:
Люди а как меняется
цвет подсветки текущей строки?
Styles.Selection.Color
Насчет моей проблемы (нельзя стрелками перемещаться по VerticalGrid):
нашлась причина, но пока не найдено решение.
Перемещение не работает так как у меня DLL-ка, в EXE-версии навигация стрелками по гриду работает.
У кого есть какие-нибудь мысли по моей проблеме?
Прямо мистика. У меня получилось сделать так, чтобы всё заработало, но только при условии, что моя DLL-ка вызывается после другой определенной DLL-ки. Буду рыться в ней и искать в чём подвох.
Проблема с TcxDBTreeList.
Условие выполняется, т.е. узел есть, обнаружен, присутствует в дереве.
Код: if dbTreeTypes.DataController.LocateByKey(key) then
Условие выполняется, т.е. узел есть, обнаружен, присутствует в дереве.
Код: if dbTreeTypes.DataController.LocateByKey(key) then
Подскажите как сделать (возможно ли) : CxGrid, ставлю в стилях Background Bitmap. Собственно все отлично, но картинка закрывается строками и видно лишь часть.
Как сделать чтобы картинка была видна сквозь строки. Смотрел в сторону прозрачности строк, но чето ничего не нашел...
Как сделать чтобы картинка была видна сквозь строки. Смотрел в сторону прозрачности строк, но чето ничего не нашел...
Нужно, наверное, не в стилях
Добавлено:
Кстати в стилях тоже есть content
Добавлено:
Кстати в стилях тоже есть content
X11
Ура, спасибо. Как то я и не думал...
Ура, спасибо. Как то я и не думал...
Вопрос по DisplayFormat.
В гриде есть колонка типа CalcEdit.
Присваиваем ей значение с плавающей точкой.
По идее должно быть 33,6, а грид показывает: 1,33613440008918E21
Свойство DisplayFormat колонки имеет значение: ####0.00;####0.00
Добавлено:
Забыл добавить ,что грид ни к чему не привязан.
Добавлено:
Извиняюсь. Поспешил. Косяк был у меня.
В гриде есть колонка типа CalcEdit.
Присваиваем ей значение с плавающей точкой.
По идее должно быть 33,6, а грид показывает: 1,33613440008918E21
Свойство DisplayFormat колонки имеет значение: ####0.00;####0.00
Добавлено:
Забыл добавить ,что грид ни к чему не привязан.
Добавлено:
Извиняюсь. Поспешил. Косяк был у меня.
Здравствуйте, подскажите пожалуйста, как получить номер строки грида, находящейся в фокусе, но при этом список отфильтрован.В случае списка без наложения фильтра всё ок:
Код: RoutePlan :=
grdPlanTV.DataController.GetValue(grdPlanTV.DataController.GetFocusedRowIndex
,grdPlanTV.FindItemByName('grdPlanTVID').Index);
Код: RoutePlan :=
grdPlanTV.DataController.GetValue(grdPlanTV.DataController.GetFocusedRowIndex
,grdPlanTV.FindItemByName('grdPlanTVID').Index);
Код: for I := 0 to Grid1.DataController.FilteredRecordCount -1 do begin
Grid1.DataController.Values[Grid1.DataController.FilteredRecordIndex[i], colPhone.Index];
Цитата:
Код:
RoutePlan :=
grdPlanTV.DataController.GetValue(grdPlanTV.DataController.GetFocusedRowIndex
,grdPlanTV.FindItemByName('grdPlanTVID').Index);
А вот после фильтрации мне не удаётся воспользоваться свойством FocusedRecordIndex. Это собственно и понятно. Думаю, реализация такая должна быть. В доке подсказку не нашёл.
DriftDream
Так в примере же у тебя FocusedRowIndex
RoutePlan :=
grdPlanTV.DataController.GetValue(grdPlanTV.DataController.FocusedRecordIndex
,grdPlanTV.FindItemByName('grdPlanTVID').Index);
Все нормально должно работать, по крайне мере у меня на гриде работет
Скорее всего я не первая, кто встречается с этим приколом, но вроде не нашла ответа.
Я динамически строю TcxdbVerticalGrid, вставляю в него строки, у которых задаю соответствующее свойство Property. В данном случае это тип TcxButtonEditProperties. Потом задаю обработчик нажатия на кнопку CxButtonEditClickEvent;
в котором надо каким-то образом определить на какой именно строке грида была нажата кнопка. Сейчас это выглядит так:
Код:
procedure TBaseGridBuilder.CxButtonEditClickEvent(Sender: TObject;
AButtonIndex: integer);
var i:integer;
begin
for i := 0 to FButtonList.Count - 1 do
if TcxVerticalGrid(Grid).FocusedRow = TcxVerticalGrid(grid).RowByCaption(TButtons(FButtonList[i]).FButtonFieldName) then
begin
TcxCustomEdit(Sender).editvalue := 'Hello World';
exit;
end;
end;
Я динамически строю TcxdbVerticalGrid, вставляю в него строки, у которых задаю соответствующее свойство Property. В данном случае это тип TcxButtonEditProperties. Потом задаю обработчик нажатия на кнопку CxButtonEditClickEvent;
в котором надо каким-то образом определить на какой именно строке грида была нажата кнопка. Сейчас это выглядит так:
Код:
procedure TBaseGridBuilder.CxButtonEditClickEvent(Sender: TObject;
AButtonIndex: integer);
var i:integer;
begin
for i := 0 to FButtonList.Count - 1 do
if TcxVerticalGrid(Grid).FocusedRow = TcxVerticalGrid(grid).RowByCaption(TButtons(FButtonList[i]).FButtonFieldName) then
begin
TcxCustomEdit(Sender).editvalue := 'Hello World';
exit;
end;
end;
Добрый день, подскажите умеет ли cxGrid выводить форматированный текст - то есть что-то типа разметки?
sobolenok
А каким боком здесь cxGrid? Если надо форматированное поле, то есть RichEdit для rtf разметки
А каким боком здесь cxGrid? Если надо форматированное поле, то есть RichEdit для rtf разметки
Цитата:
А каким боком здесь cxGrid?
в базе хранится фоматированный текст и необходимо вывести его списком в гриде на экран
Graach
Что то не совсем понятно, что вам надо, но вообще-то у TcxButtonEditProperties есть обработчик события ButtonClick, где передаётся индекс кнопки
А вообще-то не совсем понятен смысл этих претурбераций...
Добавлено:
sobolenok
Так форматированный каким форматом, и вывести на экран или в грид? Если формат rtf то нет проблем, если какой то другой, то придется выводить не в грид
Что то не совсем понятно, что вам надо, но вообще-то у TcxButtonEditProperties есть обработчик события ButtonClick, где передаётся индекс кнопки
А вообще-то не совсем понятен смысл этих претурбераций...
Добавлено:
sobolenok
Так форматированный каким форматом, и вывести на экран или в грид? Если формат rtf то нет проблем, если какой то другой, то придется выводить не в грид
Приветствую.
Подскажите, как узнать реальную ширину колонки в гриде, если стоит св-во "OptionsView.ColumnAutoWidth" и есть колонки, которым выставлена ширина и запрещено её изменение? св-во Width колонки возвращает ту ширину, что была установлена в дизайне... а мне надо ту, что реально на экране после автоширины...
Подскажите, как узнать реальную ширину колонки в гриде, если стоит св-во "OptionsView.ColumnAutoWidth" и есть колонки, которым выставлена ширина и запрещено её изменение? св-во Width колонки возвращает ту ширину, что была установлена в дизайне... а мне надо ту, что реально на экране после автоширины...
Czechoslovak
Цитата:
Да, там есть индекс кнопки относительно других позвожных кнопок этого же самого TcxButtonEditа одной строки. Если у меня несколько строк у которых свойства выставлены типа TcxButtonEdit и в каждой из них стоит только одна кнопка, то при каждом клике на кнопку будут вызываться обработчики для каждой строки, потому что у всех них будет индекс 0 или 1 (точно не помню, так конкретно не смотрела), но значение будет одно и то же.
А надо мне это потому, что я динамически строю грид, получая данные из БД и при построении я заранее не знаю ни какого типа у меня должны быть строки, ни сколько их будет, ничего. А обрабатывать нажатие как-то надо.
Цитата:
... у TcxButtonEditProperties есть обработчик события ButtonClick, где передаётся индекс кнопки
Да, там есть индекс кнопки относительно других позвожных кнопок этого же самого TcxButtonEditа одной строки. Если у меня несколько строк у которых свойства выставлены типа TcxButtonEdit и в каждой из них стоит только одна кнопка, то при каждом клике на кнопку будут вызываться обработчики для каждой строки, потому что у всех них будет индекс 0 или 1 (точно не помню, так конкретно не смотрела), но значение будет одно и то же.
А надо мне это потому, что я динамически строю грид, получая данные из БД и при построении я заранее не знаю ни какого типа у меня должны быть строки, ни сколько их будет, ничего. А обрабатывать нажатие как-то надо.
драсте..подскажите плз..есть грид в нем поле типа LookupComboBox..как программно сделать dropdown? а то что то в упор не вижу
При нажатии на Ctrl+Enter в таблице выпадает список с другим гридом, но у меня колонка типа popup
Обрати внимание на dbgArenda.Controller.EditingController.ShowEdit
Код: procedure TfmArendaSearch.dbgArendaKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
//если нажата клавиша Ctrl+Enter
if (ssCtrl in Shift) then
if (key = VK_RETURN) then
if (dbgArenda.Controller.FocusedColumn = dbgArendaSTREET_NAME) then
dbgArenda.Controller.EditingController.ShowEdit(dbgArendaSTREET_NAME);
end;
Обрати внимание на dbgArenda.Controller.EditingController.ShowEdit
Код: procedure TfmArendaSearch.dbgArendaKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
//если нажата клавиша Ctrl+Enter
if (ssCtrl in Shift) then
if (key = VK_RETURN) then
if (dbgArenda.Controller.FocusedColumn = dbgArendaSTREET_NAME) then
dbgArenda.Controller.EditingController.ShowEdit(dbgArendaSTREET_NAME);
end;
Подскажите, пожалуйста, как программно на C# запретить закрытие NavBarGroup. Спасибо
Добрый день. Я в cxGrid добавляю cxGridDBChartView. При выводе на печать график виден в окне предварительного просмотра, но при печати на принтер выходит пустая рамка. Банды все выводятся но самого графике нет. Искал в инете, но так и нашел. Подскажите пожалуйста что делать?
ну так расскажи же нам, как именно печатаешь
Вот код.
Код:
MainForm.dxComponentPrinter1Link1.PrinterPage.PageHeader.CenterTitle.Clear;
MainForm.dxComponentPrinter1Link1.PrinterPage.Orientation:=poLandscape;
MainForm.dxComponentPrinter1Link1.Component := TcxGrid(cxGrid1);
MainForm.dxComponentPrinter1Link1.PrinterPage.PageHeader.CenterTitle.Add('Учтенный объем по ' + UslugaCombo.Text+ ' в разрезе секторов');
MainForm.dxComponentPrinter1.Preview(true);
Код:
MainForm.dxComponentPrinter1Link1.PrinterPage.PageHeader.CenterTitle.Clear;
MainForm.dxComponentPrinter1Link1.PrinterPage.Orientation:=poLandscape;
MainForm.dxComponentPrinter1Link1.Component := TcxGrid(cxGrid1);
MainForm.dxComponentPrinter1Link1.PrinterPage.PageHeader.CenterTitle.Add('Учтенный объем по ' + UslugaCombo.Text+ ' в разрезе секторов');
MainForm.dxComponentPrinter1.Preview(true);
crazypiggy
У меня постоянные, не с гридом, но аналогичные проблемы с Printsystem 4. Вынужден откатится на 3-ю версию. Попробуте и Вы может поможет.
У меня постоянные, не с гридом, но аналогичные проблемы с Printsystem 4. Вынужден откатится на 3-ю версию. Попробуте и Вы может поможет.
Есть проблемка.
Создал компонент от TcxGroupBox. Переопределил Create так как внутри него создаю Parented форму.
Проблема в том что когда я пытаюсь этот компонент положить на любой контейнер на форме(GroupBox, ScrollBox etc..) он создается не в контейнере а на форме (форма является владельцем), потом конечно его можно переместить на контейнер но интересует причина почему при создании он не создается в контейнере на котором указываешь мышкой.
Код конструктора.
Код:
TxePdCustomGroupBox=Class(TcxGroupBox)
Constructor Create(AOwner:TComponent); Override;
{============================================}
Constructor TxePdCustomGroupBox.Create(AOwner:TComponent);
Begin
Inherited;
Parent:=TWinControl(AOwner);
FCustomForm:=TfmCustomMessengers.CreateParented(Self.Handle);
FCustomForm.ManualDock(TWinControl(Self));
FCustomForm.Align:=alclient;
FCustomForm.Enabled:=Not(csDesigning In Owner.ComponentState);
FCustomForm.Show;
End;
Создал компонент от TcxGroupBox. Переопределил Create так как внутри него создаю Parented форму.
Проблема в том что когда я пытаюсь этот компонент положить на любой контейнер на форме(GroupBox, ScrollBox etc..) он создается не в контейнере а на форме (форма является владельцем), потом конечно его можно переместить на контейнер но интересует причина почему при создании он не создается в контейнере на котором указываешь мышкой.
Код конструктора.
Код:
TxePdCustomGroupBox=Class(TcxGroupBox)
Constructor Create(AOwner:TComponent); Override;
{============================================}
Constructor TxePdCustomGroupBox.Create(AOwner:TComponent);
Begin
Inherited;
Parent:=TWinControl(AOwner);
FCustomForm:=TfmCustomMessengers.CreateParented(Self.Handle);
FCustomForm.ManualDock(TWinControl(Self));
FCustomForm.Align:=alclient;
FCustomForm.Enabled:=Not(csDesigning In Owner.ComponentState);
FCustomForm.Show;
End;
Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211
Предыдущая тема: Помогите пожалуйста с блокировкой клавиатуры и мышки
Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.