Форум: "Начинающим";
Текущий архив: 2008.12.14;
Скачать: [xml.tar.bz2];
ВнизРежим редактирования ячейки DBGrid-a Найти похожие ветки
← →
abhtr (2008-10-31 10:59) [0]При заполнении ячеек DBGrid-a делаю автоматический переход на следующую колонку по нажатию Enter.
dbgPrHsPrice.SelectedIndex := dbgPrHsPrice.SelectedIndex + 1;
Когда происходит переход, то новая ячейка сразу же переходит в режим, когда синим цветом выделяется не ячейка целиком, а выделяется число в этой ячейке.
Не могу определить как эти режимы называются и как можно ими управлять программно.
Т.е. как сделать, чтобы при переходе в новую ячейку включался режим, когда выделяется вся ячейка, а не число в ней.
← →
MsGuns © (2008-10-31 11:10) [1]Рисовать ручками как нужно в событии TDBGrid.OnDrawColumnCell
← →
abhtr (2008-10-31 11:27) [2]Я не против
> Рисовать ручками
Но поясните, хотя бы то, как называются эти два режима:
режим 1 - это когда выделяется все число в ячейке, и
режим 2 - это когда выделена вся ячейка целиком.
← →
Правильный$Вася (2008-10-31 12:19) [3]
> Когда происходит переход, то новая ячейка сразу же переходит
> в режим, когда синим цветом выделяется не ячейка целиком,
> а выделяется число в этой ячейке.
это нормально, ты же в режиме редактирования
← →
ASoft (2008-10-31 12:51) [4]
> abhtr (31.10.08 10:59)
>
> При заполнении ячеек DBGrid-a делаю автоматический переход
> на следующую колонку по нажатию Enter.
Если разрешает ТЗ, имхо, сделать редактирование лучше в редакторе, нежели в таблице непосредственно
← →
Германн © (2008-10-31 15:10) [5]
> ASoft (31.10.08 12:51) [4]
>
>
> > abhtr (31.10.08 10:59)
> >
> > При заполнении ячеек DBGrid-a делаю автоматический переход
> > на следующую колонку по нажатию Enter.
>
> Если разрешает ТЗ, имхо, сделать редактирование лучше в
> редакторе, нежели в таблице непосредственно
>
Опять холивар?
← →
MsGuns © (2008-10-31 16:00) [6]>abhtr (31.10.08 11:27) [2]
>Но поясните, хотя бы то, как называются эти два режима:
>режим 1 - это когда выделяется все число в ячейке,
грид показывает не ячейку, а InplaceEditor, который умеет самостоятельно принимать сигналы от клавиатуры (мыши) и рисовать на своей канве. Выделение управляется им же св-вами SelStart,SelWidth (насколько помню)
и
>режим 2 - это когда выделена вся ячейка целиком.
грид собственно сам рисует в ячейке - для коррекции его действий и служит упомянутое событие
Если Вам так уж необходимо вручную управлять цветом и фонтом в ячейке, то надо осилить и то, и другое.
← →
Johnmen © (2008-10-31 16:03) [7]
> MsGuns © (31.10.08 11:10) [1]
> MsGuns © (31.10.08 16:00) [6]
> Если Вам так уж необходимо вручную управлять цветом и фонтом в ячейке, то надо осилить и то, и другое.
Ему не нужно ни то, ни другое. Читаем внимательно вопрос...
← →
MsGuns © (2008-10-31 16:05) [8]Опции грида ?
У меня телепатор в аренде
← →
abhtr (2008-10-31 16:35) [9]Просто мне надо перевести ячейку из режима 1 в режим 2 программно. И все. Извините, если кого это обидело своей наивностью.
← →
clickmaker © (2008-10-31 16:50) [10]> как эти режимы называются
dgAlwaysShowEditor ?
← →
Leonid Troyanovsky © (2008-10-31 16:55) [11]
> abhtr (31.10.08 10:59)
> Не могу определить как эти режимы называются и как можно
> ими управлять программно.
PostMessage(DBGrid1.Handle, WM_KEYDOWN, vk_f2, 0);
SendMessage(DBGrid1.Handle, WM_KEYUP, vk_f2, 0);
Ну, или vk_return, кажись.
--
Regards, LVT.
← →
abhtr (2008-11-01 11:23) [12]Всем спасибо.
Остановился на следующем:
//Имитация нажатия и
PostMessage(dbgPrHsPrice.Handle, WM_KEYDOWN, VK_RETURN, 0);
//Имитация отпускания клавиши Enter
PostMessage(dbgPrHsPrice.Handle, WM_KEYUP, VK_RETURN, 0);
← →
Johnmen © (2008-11-01 11:33) [13]Думается, было бы достаточно в опциях выставить dgAlwaysShowEditor.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.12.14;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.006 c