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

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

Графика [D5]


Страницы:   1 2 3

Ghost del vonte ©   (2010-10-02 02:58:00) 

В моей программе надо рисовать на компоненте TDrawGrid, стоит свернуть программу или переключится на другое окно, рисование исчезает, как это устранить? (чтобы не исчезало)


Плохиш   (2010-10-04 19:25:00) [1]


> Ghost del vonte ©   (04.10.10 18:18) [59]

Не надо пытаться обмануть систему
или включи DefaultDrawing
или тебе в [43] же сказали

procedure TfmLora.DrawGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
 Rect: TRect; State: TGridDrawState);
begin
 if gdSelected in State then
 begin
   DrawGrid1.Canvas.Brush.Color:= DColor;
   //FillRect(DrawGrid1.Canvas.Handle, Rect, 0);
   DrawGrid1.Canvas.FillRect(Rect);
   //InvalidateRect(DrawGrid1.Canvas.Handle, nil, false);
   //DrawGrid1.Invalidate;
   //Bitmap.Canvas.Brush.Color:= Panel1.Color;
   //Bitmap.Canvas.FillRect(Rect);
   StatusBar1.Panels[1].Text:= 'Col: '+IntToStr(ACol)+' , Row: '+IntToStr(ARow);
 end

 else
 begin
   DrawGrid1.Canvas.Brush.Color:= DrawGrid1.Color;
   DrawGrid1.Canvas.FillRect(Rect);
   StatusBar1.Panels[1].Text:= 'Col: '+IntToStr(ACol)+' , Row: '+IntToStr(ARow);
 end;

end;


Ghost del vonte   (2010-10-04 18:18:00) [2]


> Я создал новый проект, бросил на форму TDrawGrid, создал
> обработчик OnDrawCell, скопировал в него приведённый здесь
> код, запустил проект на выполнение. Текущая ячейка отрисовалась
> красным, минимизировал форму, востановил - ячейка отрисовалась
> красным. Выделил несколько ячеек - они отрисовались красным,
>  минимизировал - востановил форму - ячейки всё-равно отрисовались
> красным.
> Так кому я должен верить, вам или своим глазам?

А разве я говорил вам что неверю тому, что вы говорите? Я просто не пойму почему у меня так не получается....
Вот архив моего проекта со всеми компонентами для его правильной работы, может вы сможете найти эту ошибку, которая мешает отрисовке!

http://files.mail.ru/WOO0B0


Плохиш   (2010-10-04 18:16:00) [3]


> Ghost del vonte ©   (04.10.10 17:53) [54]
> Я серьезно! Я перепробовал все, что только мог, и все то,
>  что здесь советовали, - толку нет!

Я создал новый проект, бросил на форму TDrawGrid, создал обработчик OnDrawCell, скопировал в него приведённый здесь код, запустил проект на выполнение. Текущая ячейка отрисовалась красным, минимизировал форму, востановил - ячейка отрисовалась красным. Выделил несколько ячеек - они отрисовались красным, минимизировал - востановил форму - ячейки всё-равно отрисовались красным.
Так кому я должен верить, вам или своим глазам?


Ghost del vonte   (2010-10-04 18:10:00) [4]


> Мы тут не вопросы веры обсуждаем. Это тебе на другой форум.
>  Тебе говорят, что все работает, если ты утверждаешь обратное
> - доказывай. Причем здесь вера? Показывай ВЕСЬ код. Сдается
> мне, что у тебя в другом месте ошибка, а ты к гриду привезался.
>

Возможно, сделаю....


Andy BitOff   (2010-10-04 18:08:00) [5]

> Ghost del vonte ©

Выложи куда-нибудь весь свой проект и компоненты/библиотеки, которые нужны, чтобы проект скомпилировался, кто-нибудь да посмотрит у нас есть тут добрые люди (пока еще) =)

> не верите и ладно

Мы тут не вопросы веры обсуждаем. Это тебе на другой форум. Тебе говорят, что все работает, если ты утверждаешь обратное - доказывай. Причем здесь вера? Показывай ВЕСЬ код. Сдается мне, что у тебя в другом месте ошибка, а ты к гриду привезался.


Anatoly Podgoretsky   (2010-10-04 18:00:00) [6]

Прощай


Ghost del vonte   (2010-10-04 17:53:00) [7]


> Подкидываю идею - надо нанять программиста.

Того, что создавал компонент TDrawGrid?
Я серьезно! Я перепробовал все, что только мог, и все то, что здесь советовали, - толку нет! Ладно, разберусь сам, кроме насмешек, ничего не вижу.... не верите и ладно! Спасибо всем за отнятое время!


Плохиш   (2010-10-04 17:48:00) [8]


> то может подкинете идею тогда?

Подкидываю идею - надо нанять программиста.


Ghost del vonte   (2010-10-04 17:28:00) [9]

Удалено модератором
Примечание: Обсуждение модерирования


Ghost del vonte   (2010-10-04 17:08:00) [10]

Удалено модератором


Ghost del vonte   (2010-10-04 17:07:00) [11]

Удалено модератором
Примечание: Давай портянки публиковать в другом месте, а это оставим для общения.


Ghost del vonte   (2010-10-04 17:06:00) [12]


>
> Попытаться понять то, что тебе пишут.

А я по вашему развлекаюсь здесь чтоли? Я не пробовал все что здесь пишут и приводят? Говорю исчезает, все неверят, выложу потом главный юнит в двух частях!


Virgo_Style   (2010-10-03 21:59:00) [13]


> что уже делать не знаю.


Попытаться понять то, что тебе пишут.


Ghost del vonte   (2010-10-03 19:16:00) [14]


> Выложи куда- нибудь с архивированный свой проект с глюком

Могу на емайл прислать, программа у меня использует компоненты: XPControls, ZLib (поставляется с Дельфи версии 3), TPNGObject, всех их тоже могу прислать, программа пока еще в виде черновика....


бумбум   (2010-10-03 17:51:00) [15]

Выложи куда- нибудь с архивированный свой проект с глюком


Ghost del vonte   (2010-10-03 16:09:00) [16]


> Забыл ещё сказать автору. (Замучен своей проблемой).
> Если уж DefaultDrawing:= false, то надо самому рисовать
> всегда! А не только в некоторых случаях типа if gdSelected
> in State .
> Да для ряда компонент из библиотеки VCL такое может пройти
> и даже действительно проходит. Но не надо полагаться на
> случай.

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


Плохиш   (2010-10-03 13:38:00) [17]


> Германн ©   (03.10.10 01:30) [42]
>
> Не нашел в TDrawGrid чего-то подобного MultiSelect.

Options значение goRangeSelect, по-умолчанию включено. Ячейки выделяются стандартным для вындовса способом, мышкой или стрелками с шифтом.


Германн   (2010-10-03 01:43:00) [18]

Забыл ещё сказать автору. (Замучен своей проблемой).
Если уж DefaultDrawing:= false, то надо самому рисовать всегда! А не только в некоторых случаях типа if gdSelected in State.
Да для ряда компонент из библиотеки VCL такое может пройти и даже действительно проходит. Но не надо полагаться на случай.


Германн   (2010-10-03 01:30:00) [19]

Не нашел в TDrawGrid чего-то подобного MultiSelect.
Как там у Плохиша что-то получается не понятно.


Anatoly Podgoretsky   (2010-10-02 23:42:00) [20]


> у меня Винда Виста, она не поддерживает справочную систему
> Дельфи 5 или 7!

Она поддерживает


Страницы:   1 2 3

Наверх

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