Форум: "Начинающим";
Текущий архив: 2006.03.12;
Скачать: [xml.tar.bz2];
ВнизПочему не выводится текст? Найти похожие ветки
← →
Bratskiy © (2006-02-22 09:23) [0]Привет! Пытаюсь в RichEdit средствам API вывести текст, что-то не получается.
var
DC:HWND;
st:PChar;
sz:integer;
w:longbool;
......
DC:=GetDC(RichEdit1.handle);
st:=PChar("Ghbdtn");
sz:=SizeOf(st);
w:=TextOut(DC,10,10,st,sz);
......
Пытался ещё всякими способами, что-то не выходит! Где я ошибаюсь?
← →
Ega23 © (2006-02-22 09:37) [1]RichEdit1.Canvas.Handle ?
← →
McSimm © (2006-02-22 09:37) [2]вы пытаетесь его там нарисовать? зачем?
Или используйте графический элемент для рисования или позвольте RichRdit`у самому рисовать имеющийся у него текст
← →
Bratskiy © (2006-02-22 09:39) [3]У RichEdit нету Canvas
← →
MBo © (2006-02-22 10:44) [4]вместо SizeOf нужно Length
Но всё равно это извращение...
← →
Bratskiy © (2006-02-22 10:49) [5]И Length пробовал всё равно не работает.
Никакое это не извращение. Я просто хочу выравнивание текста по ширине сделать, а без API походу это сделать никак нельзя.
← →
Ega23 © (2006-02-22 11:17) [6]
> Никакое это не извращение. Я просто хочу выравнивание текста
> по ширине сделать, а без API походу это сделать никак нельзя.
>
Почему? Рекомендую обратить внимание на метод TCanvas.GetTextWidth, а также на компонент TStaticText
← →
MBo © (2006-02-22 11:43) [7]RichEdit 3 версии поддерживает выравнивание по ширине (через EM_PARAFORMAT), но в Дельфи используется RichEdit1 (а в RXLib - 2.0).
Пока неясно - если нужно только выводить текст, зачем нужен RichEdit?
← →
Bratskiy © (2006-02-26 05:59) [8]
> Ega23 ©
Как из RichEdit получить доступ к Canvas? Свойства такого у RichEdit нет, через Canvas.Create, тоже неполучается, так как у этого конструктора нет параметров, в которые можно передать владельца.
> MBo ©
Как я понял, RichEdit 3.0 это не компонент для Delphi, а Windows"кая библиотека, которая есть на компьютере если на компьютере установлен Office XP, или даже Office более ранней версии. Где тогда взять компонент который работает с этой библиотекой. А именно RichEdit мне нужен для того, чтобы проссматривать и редактировать текст в формате rtf
← →
Bratskiy © (2006-02-26 06:38) [9]Текст при помощи API вывелся, но получилось нето, что надо так как его нельзя редактировать.
← →
Ega23 © (2006-02-26 10:14) [10]
> Как из RichEdit получить доступ к Canvas? Свойства такого
> у RichEdit нет, через Canvas.Create, тоже неполучается,
> так как у этого конструктора нет параметров, в которые можно
> передать владельца.
>
А зачем тебе Canvas именно TRichEdit? Ты хочешь узнать ширину текста в пикселях, или она тебе не нужна??
← →
Bratskiy © (2006-02-26 10:32) [11]Да, мне нужна ширина текста в пикселях, а текст ширину которого нужно узнать у меня в RichEdit. Конечно можно сам текст брать не из RichEdit, а из файла, который в этом самом RichEdit выводится. Но тогда как узнать ширину строки (RichEdit1.Lines.Strings[i]), и не только ширину, а и саму строку, которую надо по ширине расстягивать. И самое главное мне этот текст нужно потом ещё run-time редактировать, а это наверное с помощью RichEdit и Canvas сделать нельзя
← →
Ega23 © (2006-02-26 10:36) [12]Ты можешь создать виртуальный Bitmap, на его Канвас вывести текст и после этого смтреть на его параметры.
← →
Bratskiy © (2006-02-26 10:44) [13]В виртуальном Bitmap править наверное не получится
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.03.12;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.013 c