Главная страница
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.035 c
1-1168507230
alex_***
2007-01-11 12:20
2007.03.04
фильтрация в DBGridEh через STFilter - работает неадекватно


2-1171473191
lamer_5
2007-02-14 20:13
2007.03.04
ListView - Доступ ко второй колонке


15-1171023997
homm
2007-02-09 15:26
2007.03.04
Вопрос по висте


10-1129813833
yanker
2005-10-20 17:10
2007.03.04
CORBA сервер на машине с двумя сетевухами


15-1170100659
Екатерина_1
2007-01-29 22:57
2007.03.04
FIBPlus 6.5 Новая версия компонентов.