Вниз
Скачать: CL | DM;

Как можно определить параметр ячейки DrawGrid?   Найти похожие ветки 

 
MJShvedov ©   (2006-12-06 18:33) [0]

Такой вопрос. Нужно сделать программу, которая напоминает Image Editor. Есть DrawGrid, ячейки которого пользователь устанавливает в одно из доступных положений цвета. Потом это все кодируется в файл определенного формата.
Все в принципе понятно как сделать, за исключением определения параметра ячейки (например clRed - 1, clBlack - 0). Где и как можно считать текущий цвет ячейки?


 
ЮЮ ©   (2006-12-07 08:34) [1]


> Где и как можно считать текущий цвет ячейки?
>

Наверное там, где хранишь. Ведь в файл ты что-то кодируешь?


 
MJShvedov ©   (2006-12-07 08:42) [2]

В файл нужно записать как раз закодированную матрицу этих параметров. Переписывать массив при каждом изменении цвета довольно гемморойно - он содержит около 2500 элементов.

Вопрос можно поставить более узко: как получить значение цвета текущей ячейки DrawGrid?


 
Сергей М. ©   (2006-12-07 09:39) [3]


> Переписывать массив при каждом изменении цвета довольно
> гемморойно - он содержит около 2500 элементов.
>


Зачем переписывать весь массив ?

Если пользователем изменяется цвет ячейки [i,j], то изменяется только соответствующий эл-т массива [i,j]

Записать же массив размером 2.5к в файл при завершении программы и прочитать из файла в массив при старте программы не представляет никаккой сложности - это полдюжины строк кода тривиального содержания.


> как получить значение цвета текущей ячейки DrawGrid?


Куда сохранил значение цвета, оттуда и получай.

Если это у тебя массив, то из соотв. элемента массива и читай это значение.


 
ЮЮ ©   (2006-12-07 11:23) [4]

матрицу этих параметров - ключевое слово.
Её надо иметь.
Из неё брать значения в OnDrawCell
В ней изменять значения при назначении нового и вызыввать InvalidateCell для переписовки значения
Её кодировать при сохранении
В неё раскодировать при открытии



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.028 c
15-1167925331
ProgRAMmer Dimonych
2007-01-04 18:42
2007.01.28
Областная олимпиада


3-1162580357
Adil
2006-11-03 21:59
2007.01.28
Oracle 10g Unicode, TntComponents


2-1168229678
Рекорд
2007-01-08 07:14
2007.01.28
Как быстро скопировать record ?


3-1162996402
pic509
2006-11-08 17:33
2007.01.28
как убрать пароль с базы данных ib5?


15-1167920399
vidiv
2007-01-04 17:19
2007.01.28
Движок для чата




   Наверх