Большой Воронежский Форум

Если это ваш первый визит, рекомендуем почитать справку по форуму. Для размещения своих сообщений необходимо зарегистрироваться. Для просмотра сообщений выберите раздел.
Вернуться   Большой Воронежский Форум » Компьютеры и все, что с ними связано » » Программирование
Философия, технологии, алгоритмы!

Ответ
 
Опции темы
Старый 18.04.2006, 15:25   #1   
Форумец
 
Сообщений: 171
Регистрация: 25.01.2006
Возраст: 40

mppm вне форума Не в сети
Question Delphi 7.0: Программное включение/выключение редактирования StringGrid

Всем привет!
Проблема в том, чтобы во время выполнения программы в зависимости от некоторых условий включался либо выключался режим редактирования содержимого ячеек StringGrid.
Я так понимаю, что должно быть что-то типа:
StringGrid1.Options := goEditing;
Но Options и goEditing - разных типов, а как их преобразовать к одному типу не знаю???
  Ответить с цитированием
Старый 18.04.2006, 15:32   #2   
Бывалый форумец
 
Аватар для J++
 
Сообщений: 687
Регистрация: 05.08.2005

J++ вне форума Не в сети
Там есть такое понятие как Set (TSet? не понмю, ИМХО просто Set).

Не помню как это в Паскале выражается, но в "борландовском" С++ (С++Builder) было что-то вроде:

(не помню точное название класса для StringGrid-овых options, пишу приблизительно)
TStringGridOptions go=new TStringGridOptions();
go<<goEditing; // как бы "вставка" в эти go новой опции goEditing, это битовые маски
StringGrid1.Options=go;

Тебе нужно сделать примерно то же на Паскале.
  Ответить с цитированием
Старый 18.04.2006, 16:07   #3   
Форумец
 
Сообщений: 171
Регистрация: 25.01.2006
Возраст: 40

mppm вне форума Не в сети
Question

Может это поможет:
Delphi syntax:
type
TGridOption = (goFixedVertLine, goFixedHorzLine, goVertLine, goHorzLine, goRangeSelect, goDrawFocusSelected, goRowSizing, goColSizing, goRowMoving, goColMoving, goEditing, goTabs, goRowSelect, goAlwaysShowEditor, goThumbTracking);
TGridOptions = set of TGridOption;
C++ syntax:
enum TGridOption { goFixedVertLine, goFixedHorzLine, goVertLine, goHorzLine, goRangeSelect, goDrawFocusSelected, goRowSizing, goColSizing, goRowMoving, goColMoving, goEditing, goTabs, goRowSelect, goAlwaysShowEditor, goThumbTracking };
typedef Set<TGridOption, goFixedVertLine, goThumbTracking> TGridOptions;
  Ответить с цитированием
Старый 18.04.2006, 16:19   #4   
Форумец
 
Сообщений: 171
Регистрация: 25.01.2006
Возраст: 40

mppm вне форума Не в сети
Exclamation

А-а-а-а-а !!!
Сам спросил, сам ответил

If условие Then StringGrid1.Options := StringGrid1.Options + [goEditing] Else StringGrid1.Options := StringGrid1.Options - [goEditing];
  Ответить с цитированием
Поиск в теме: 



Быстрый переход:

  Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Support by DrIQ & Netwind