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

Виртуальный TCanvas и его фоновый цвет...   Найти похожие ветки 

← →
Ice   (2006-02-15 16:50) [0]

procedure TForm1.Button1Click(Sender: TObject);
var VRT : TCanvas;
   RCT : TRect;
begin

 // Создаю прямоугольник
 RCT := Rect(0, 0, 100, 10);

 //Создаю виртуальную канву
 VRT := TCanvas.Create;
 VRT.Handle := CreateCompatibleDC(0);

 //устанавливаю фоновый цвет
 VRT.Brush.Color := clGray;

 //Заполняю прямоугольник этим самым фоновым цветом
 VRT.FillRect(RCT);

 //Теперь пытаюсь получить цвет из точки внутри этого прямоугольника
 //И получаю clBlack, хотя устанавливал VRT.Brush.Color := clGray
 //Что я не так делаю ???????????????????????????????????????
 self.Color := VRT.Pixels[1,1];

 if VRT.Handle <> 0 then DeleteDC(VRT.Handle);
 FreeAndNil(VRT);
end;


← →
MBo ©   (2006-02-15 17:14) [1]

После создания compatibleDC в нем полагается выбрать битмап selectObject


← →
Ice   (2006-02-15 17:28) [2]

Попробовал так...

SelectObject(VRT.Handle, CreateCompatibleBitmap(VRT.Handle, 100, 10));

Получаемый цвет вместо черного стал белым, но в серый никак не хочет превращаться... :)

Можно экзампл одной строкой ? Плиз... :)


← →
MBo ©   (2006-02-15 19:01) [3]

Я смысла в этом действе особо не пойму...


← →
Ice   (2006-02-15 19:56) [4]

В чем именно ? В виртуальной канве ?
Нужна для преобразования - на рабочей канве есть текст, и когда я хочу этот текст расположить вертикально - получается нехорошо... При попиксельном повороте регионы перекрываются (SetWorldTransform не проходит, он целиком канву крутит... А мне надо только прямоугольник с текстом)... Понадобился некий буфер.

Да и заело, в плане победить...  Знания пополнить...

:)

Если CreateCompatibleBitmap - то это, тескать, проба пера по прочтению документации про SelectObject...



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

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



Память: 0.46 MB
Время: 0.025 c
2-1139737431
psa247
2006-02-12 12:43
2006.03.05
Убрать SmallImages у ListView


2-1139770997
LordOfRock
2006-02-12 22:03
2006.03.05
Вопрос по классам. Вылезает Abstract Error


15-1139516547
Bogdan1024
2006-02-09 23:22
2006.03.05
помогите придумать тему для программы


3-1136964821
alsov
2006-01-11 10:33
2006.03.05
Оптимизация запроса


15-1139762670
Admeral
2006-02-12 19:44
2006.03.05
Шаровары или Денейтвары?




   Наверх