![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Разрешить редактировать только одну колонку в StringGrid как? [WinXP]
Extar © (2007-01-11 00:15:00)Хочется чтобы пользователь мог перемещаться только вверх/вниз по одной колонке, ее же править в нужных строках.
А чтоб влево/вправо не лез.
GoAlwaysShowEditor= ON
Когда то делал...
кажется " OnSelectCell" использовал, но уже не помню что в обработчике писать.
И как проверить корректность введенных данных (скажем, число 1..100)?
D8
Extar (2007-01-11 12:41:00) [1]Разобрался
procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean);
begin
if acol<>3 then canselect:=false;
end;
Спасибо
>novill
>www.delphipages.com
Extar (2007-01-11 12:18:00) [2]Пробую так:
procedure TForm1.StringGrid1GetEditMask(Sender: TObject; ACol,
ARow: Integer; var Value: &string);
var
srect: tgridrect;
begin
with stringgrid1 do
begin
setfocus; {Передаем фокус сетке}
row:= arow; {Устанавливаем row/col}
col := 3;
srect.top := row; {Определяем выбранную область}
srect.left := 3;
srect.bottom := row;
srect.right := 3;
selection := srect; {Устанавливаем выбор}
end;
end;
Перемещение только по одной колонке, НО:
содержимое ячейки-Sender_а очищается(((
т.е. кликаю по любой другой колонке - в ней появляется пустая ячейка.
Может на какоето друго есобытие вешать этот обработчик?
Extar (2007-01-11 10:26:00) [3]Да посмотрел бы, и вообще вопросов бы не задавал, сидел бы читал Delphi Native Help
Только в Д8й этот хелп вообще какой-то полупустой, хотя и на манер "MS VS" заделан...
Где не нажмешь F1 все пишет " Topic not available"
Инфы много про .нет там (винформс и т.п.) а по VCL в 3й информативнее было...
В инете чтоли хелп к предидущим версиям искать...
novill (2007-01-11 09:45:00) [4]Тебе в событие зачем CanSelectпередается? да и вообще параметры посмотри.
Как проверить? try exceptнапример пользуй.
Extar (2007-01-11 09:23:00) [5]>Loginov Dmitry
Ну ты ферзь
Loginov Dmitry (2007-01-11 07:51:00) [6]> кажется "OnSelectCell" использовал
Пойдет
> но уже не помню что в обработчике писать
Вспоминай