|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
24.10.2007, 12:25 | #1 |
Регистрация: 28.09.2007
Сообщений: 7
|
разноцветный WinProcs.DrawText
как нарисовать текст разным цветов при наличии DT_WORDBREAK (перенос по словам внутри прямоугольника)
Format := DT_LEFT or DT_WORDBREAK; WinProcs.DrawText(Canvas.Handle, C, StrLen(C), rect, Format); в частоности это нужно внутри ячеек dbgrid, Может есть другой метод. |
24.10.2007, 12:41 | #2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Уж ни ето ли тебе нужно?:
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); var te,ax,ay,i:integer;s:string; begin s:=StringGrid1.Cells[acol,arow]; ax:=Rect.Left; ay:=Rect.Top; StringGrid1.Canvas.FillRect(rect); for i:=1 to length(s) do begin StringGrid1.Canvas.Font.Color:=rand om(255*155*86); StringGrid1.Canvas.Textout(ax,ay,s[i]); ax:=ax+StringGrid1.Canvas.TextWidth (s[i]); if ax>rect.Right then begin ax:=Rect.Left;ay:=ay+StringGrid1.Ca nvas.TextHeight(s[i]); end; end; end;
I'm learning to live...
|
24.10.2007, 13:30 | #3 |
Регистрация: 28.09.2007
Сообщений: 7
|
почти но не совсем
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState); var te,ax,ay,i:integer;s:string; begin s:=StringGrid1.Cells[acol,arow]; ax:=Rect.Left; ay:=Rect.Top; StringGrid1.Canvas.FillRect(rect); for i:=1 to length(s) do begin StringGrid1.Canvas.Font.Color:=rand om(255*155*86); StringGrid1.Canvas.Textout(ax,ay,s[i]); ax:=ax+StringGrid1.Canvas.TextWidth (s[i]); \\ если строка 'qwer asdfg' а размер прямоугольник к примеру по \\ букве 's' то DT_WORDBREAK перенесет на вторую строку 'sdfg' \\ и условие ниже отработает неправильно; if ax>rect.Right then begin ax:=Rect.Left;ay:=ay+StringGrid1.Ca nvas.TextHeight (s[i]); end; end; end; p.s. Спрасибо за участие |
24.10.2007, 13:36 | #4 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Так я потому и не использовал DT_WORDBREAK.
P.S. пожалуйста.
I'm learning to live...
|
24.10.2007, 13:41 | #5 |
Регистрация: 28.09.2007
Сообщений: 7
|
этот вариант я не рассматривал
преносить не пословам а как попало по буквам не очень красиво смотрится , хотя если других вариантов нет придется писать аналог твоей процедуры со вставкой побелов перед словом которое не помещается целиком. Интересно было найти более красивое решение.
|
24.10.2007, 13:44 | #6 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Эт верно, а что ты там такое пишеш, еси не секрет?
I'm learning to live...
|
24.10.2007, 14:01 | #7 |
Регистрация: 28.09.2007
Сообщений: 7
|
не секрет
переписываю интерфес бухучета , у нас в ДОСе справляется с любыми
учетными задачами и особой потребности как бы нет но задолбали рассказы об устаревшем интерфейсе плюс появились дополнительные идеи которое в ДОС не удается реализовать Причем рассказы об устаревшем интерфейсе беспокоят менее всего т.к сам бухучет изобретен толи в 14 веке толи гдето близко к этому и до сих пор не устарел Мы работаем на внедрения в основном как бухгалтера и менее всего как программисты в силу этого уровень бухгалтерский выше любого встретившегося бухгалтера за последние 15 лет а на уровень программиста высокой квалификации не претендуем |
24.10.2007, 14:09 | #8 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
А чего на Делфе? Вроде 1С популярнее и луче для этого подходит.
I'm learning to live...
|
24.10.2007, 14:29 | #9 | |
я получил эту роль
Старожил
Регистрация: 25.05.2007
Сообщений: 3,694
|
Цитата:
пыщь
|
|
24.10.2007, 14:40 | #10 |
Регистрация: 28.09.2007
Сообщений: 7
|
1c
1с кроме красивых картинок , распечатки красивых первичных документов , назавания и обещания что посадим обезъянку она введет первичку а все остальное программа сделает сама , к бухучету отношения не имеет
Одна маленькая проблема реалий нашего рынка учет не нужен руководителям предприятий в большинстве, а тем кому нужен почемуто приходят к нам |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
В Memo сделать так, чтобы текст был разного цвета, разноцветный memo | Artem | Компоненты Delphi | 3 | 07.09.2007 13:40 |