Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.03.04;
Скачать: CL | DM;

Вниз

Разрешить редактировать только одну колонку в StringGrid как?   Найти похожие ветки 

 
Extar ©   (2007-01-11 00:15) [0]

Хочется чтобы пользователь мог перемещаться только вверх/вниз по одной колонке, ее же править в нужных строках.
А чтоб влево/вправо не лез.

GoAlwaysShowEditor = ON

Когда то делал...
кажется "OnSelectCell" использовал, но уже не помню что в обработчике писать.

И как проверить корректность введенных данных (скажем, число 1..100)?
D8


 
Loginov Dmitry ©   (2007-01-11 07:51) [1]

> кажется "OnSelectCell" использовал


Пойдет


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


Вспоминай


 
Extar ©   (2007-01-11 09:23) [2]

>Loginov Dmitry
Ну ты ферзь


 
novill ©   (2007-01-11 09:45) [3]

Тебе в событие зачем CanSelect передается? да и вообще параметры посмотри.

Как проверить? try except например пользуй.


 
Extar ©   (2007-01-11 10:26) [4]

Да посмотрел бы, и вообще вопросов бы не задавал, сидел бы читал Delphi Native Help
Только в Д8й этот хелп вообще какой-то полупустой, хотя и на манер "MS VS" заделан...
Где не нажмешь F1 все пишет "Topic not available"
Инфы много про .нет там (винформс и т.п.) а по VCL в 3й информативнее было...
В инете чтоли хелп к предидущим версиям искать...


 
Extar ©   (2007-01-11 12:18) [5]

Пробую так:
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 12:41) [6]

Разобрался
procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
 ARow: Integer; var CanSelect: Boolean);
begin
if acol<>3 then canselect:=false;
end;


Спасибо
>novill
>www.delphipages.com



Страницы: 1 вся ветка

Текущий архив: 2007.03.04;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.029 c
8-1151854637
ma5ter
2006-07-02 19:37
2007.03.04
Нужна помощь по работе с FastLib


1-1168423481
Сатир
2007-01-10 13:04
2007.03.04
Получение фокуса компонента


2-1171442699
Andrey219
2007-02-14 11:44
2007.03.04
Проблемы с нахождением пути


5-1149307416
МикроДИП
2006-06-03 08:03
2007.03.04
Компонент TrackBar и событие OnMouseUp...


2-1171545721
Vlad Oshin
2007-02-15 16:22
2007.03.04
Опять о cgi.. Можно ли в нем использовать ADO? как?