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

Вниз

Можно ли в TRichEdit вывести текст с фоном произв. цвета?   Найти похожие ветки 

 
mmms   (2006-11-27 14:39) [0]

Т.е. часть текста под одним цветом фона, часть под другим?


 
Gydvin ©   (2006-11-27 15:25) [1]

Можно. В гугле ищем "Рисовать на tmemo" "Рисовать на tedit"


 
alex810 ©   (2006-11-27 15:56) [2]


> Можно. В гугле ищем "Рисовать на tmemo" "Рисовать на tedit"

Для рисования на поверхности TMemo необходимо создать создать собственный компонент, наследованный от TMemo и переопределить в нём рисование. Примерно так:

type
 TMyMemo = class(TMemo)
 protected
   procedure WMPaint(var message: TWMPaint); message WM_PAINT;
end;

А теперь добавьте реализацию этой процедуры:

procedure TMyMemo.WMPaint(var message: TWMPaint);
var
 MCanvas: TControlCanvas;
 DrawBounds : TRect;
begin
 inherited;
 MCanvas:=TControlCanvas.Create;
 // Работаем с временной записью TRect.
 DrawBounds := ClientRect;
 try
   MCanvas.Control:=Self;
   with MCanvas do
   begin
     Brush.Color := clBtnFace;
     FrameRect( DrawBounds );
     InflateRect( DrawBounds, -1, -1);
     FrameRect( DrawBounds );
     FillRect ( DrawBounds );
     MoveTo ( 33, 0 );
     Brush.Color := clWhite;
     LineTo ( 33, ClientHeight );
     PaintImages;
   end;
 finally
   MCanvas.Free;
 end;
end;

Процедура PaintImages рисует картинки на канвасе Memo.

procedure TMyMemo.PaintImages;
var
 MCanvas: TControlCanvas;
 DrawBounds : TRect;
 i, j : Integer;
 OriginalRegion : HRGN;
 ControlDC : HDC;
begin
 MCanvas:=TControlCanvas.Create;
 // Работаем с временной записью TRect.
 DrawBounds := ClientRect;
 try
   MCanvas.Control:=Self;
   ControlDC := GetDC(Handle);
   MCanvas.Draw(0, 1, Application.Icon);
 finally
   MCanvas.Free;
 end;
end;


 
Leonid Troyanovsky ©   (2006-11-27 18:05) [3]


> alex810 ©   (27.11.06 15:56) [2]

> собственный компонент, наследованный от TMemo и переопределить
> в нём рисование.


С тем же успехом (или, даже, с большим успехом)
можно рисовать на TWin/Control.

Кстати, тебя, видимо, уже утомило ссылаться на
тот самый справочник, а это уже не очень хорошо.

Кроме того, упомянутый справочник вполне возможно
высылать заинтересованным лицам по почте, если уж
ты занял столь альтруистическо-спамерскую позицию.

--
Regards, LVT.


 
mmms   (2006-11-27 19:52) [4]

Спасибо, если рисовать, то это совсем другое, думал текст с цветным фоном так же легко написать как и сам цветной текст.


 
Gydvin ©   (2006-11-27 19:56) [5]


> mmms   (27.11.06 19:52) [4]
>
> Спасибо, если рисовать, то это совсем другое, думал текст
> с цветным фоном так же легко написать как и сам цветной
> текст.

Это несложно. Поищите и удивитесь


 
Gydvin ©   (2006-11-27 19:58) [6]


> Для рисования на поверхности TMemo необходимо создать  
> собственный компонент

Это кто Вам такое сказал, забросайте его кирпичами


 
programania ©   (2006-11-27 20:35) [7]

Сделайте в Wodr что нужно
Сохрание в rtf
Прочитайте в RichEdit:  RichEdit1.Lines.Add("...")
Выкиньте лишнее



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

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

Наверх




Память: 0.46 MB
Время: 0.049 c
15-1164695258
cyborg
2006-11-28 09:27
2006.12.17
Кто смотрел фильм Инопланетянин?


2-1164644972
АртемКиН
2006-11-27 19:29
2006.12.17
разтрясти Indy Ftp Client


11-1140361490
HCode
2006-02-19 18:04
2006.12.17
Scrollbar & Enabled - bug?


15-1164350012
Zhekson
2006-11-24 09:33
2006.12.17
Чувствительность к регистру


2-1164857659
Marat
2006-11-30 06:34
2006.12.17
Запрос





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский