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

Вниз

Рисование в TPanel   Найти похожие ветки 

 
Юра   (2003-01-09 15:56) [0]

Хочется рисовать на панели. Сделал так:
type
TMyPanel = class(TPanel)
published
property Canvas;
end;

При попытках рисовать ничего не происходит.
with MyPanel do begin
Canvas.Pen.Style := psSolid;
Canvas.Pen.Color:=clBlack;
Canvas.Rectangle(4, 4, 13, 13);
Canvas.FillRect(Rect(1,1,10,10));
end;

MyPanel, конечно, порождаю.

Что не так?
Положить на панель PaintBox не хочу :-)


 
Игорь Шевченко ©   (2003-01-09 16:27) [1]

Попытка, надеюсь, происходит на обработке сообщения WM_PAINT ?


 
Alex Che   (2003-01-09 16:51) [2]

Создай объект TCanvas и прилепи его к панели (свойство Control) и рисуй...


 
Axis_of_Evil ©   (2003-01-09 17:00) [3]

Можно наверное так
var
PanelCanvas: TCanvas;
begin
PanelCanvas := TCanvas.Create;
PanelCanvas.Handle := GetDC(Panel1);
// рисуем ...
...
end;


Кстати, если на API, то как, ведь, например
Rectangle( Handle: hdc ; ...);


 
Юра   (2003-01-09 17:01) [4]

ОК, заработало, спасибо.


 
Юра   (2003-01-09 17:10) [5]

Возможно, я пошел немножко не тем путем. Нужно мне это вот для чего: есть палитра (TToolPanel), с нее на форму кидаются элементы - как в Delphi. Реально я создаю в run-time такой вот наследник панели, в котором еще лежат различные картинки и некая логика. Нужно это, например, для моделирования логических схем - на палитре лежат элементы И, ИЛИ, НЕ, MUX, CD, DC и т.п., "внутри" TMyPanel - символика того, что рисуется на панели и логика работы элемента.
Возможно, я избрал не лучший путь и есть лучший вариант?



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

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

Наверх




Память: 0.47 MB
Время: 0.021 c
4-62910
linker
2002-12-02 03:09
2003.01.20
Как заменить иконку стандартной звонилки на мою?


1-62479
Ag2002
2003-01-09 17:09
2003.01.20
Вид компонентов


3-62362
Danas
2002-12-24 16:43
2003.01.20
Btrieve and Delphi


3-62343
VP
2002-12-27 13:39
2003.01.20
Delphi - проверка пустой ли каталог


3-62386
ledzzz
2002-12-25 11:43
2003.01.20
компонент dxDBGrid (dev express)