Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Разрешить редактировать только одну колонку в 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" использовал


Пойдет


> но уже не помню что в обработчике писать


Вспоминай


Наверх

Титульная страница Поиск, карта сайта Написать письмо