Главная страница
    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.043 c
15-1164364973
vajo
2006-11-24 13:42
2006.12.17
Где можно взять музыку без слов


1-1162646727
Psychedelic
2006-11-04 16:25
2006.12.17
Проблема форума delphimasters


2-1164634654
webpauk
2006-11-27 16:37
2006.12.17
Определить позицию в типе


15-1164326626
Бугага
2006-11-24 03:03
2006.12.17
Газзаев: "ЦСКА проиграл, а виноват «Луч-Энергия»


3-1160480822
Darkwing
2006-10-10 15:47
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
Английский Французский Немецкий Итальянский Португальский Русский Испанский