![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 28.09.2007
Сообщений: 7
|
![]()
как нарисовать текст разным цветов при наличии DT_WORDBREAK (перенос по словам внутри прямоугольника)
Format := DT_LEFT or DT_WORDBREAK; WinProcs.DrawText(Canvas.Handle, C, StrLen(C), rect, Format); в частоности это нужно внутри ячеек dbgrid, Может есть другой метод. |
![]() |
![]() |
![]() |
#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...
|
![]() |
![]() |
![]() |
#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. Спрасибо за участие |
![]() |
![]() |
![]() |
#4 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
Так я потому и не использовал DT_WORDBREAK.
P.S. пожалуйста.
I'm learning to live...
|
![]() |
![]() |
![]() |
#5 |
Регистрация: 28.09.2007
Сообщений: 7
|
![]()
преносить не пословам а как попало по буквам не очень красиво смотрится , хотя если других вариантов нет придется писать аналог твоей процедуры со вставкой побелов перед словом которое не помещается целиком. Интересно было найти более красивое решение.
|
![]() |
![]() |
![]() |
#6 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
Эт верно, а что ты там такое пишеш, еси не секрет?
I'm learning to live...
|
![]() |
![]() |
![]() |
#7 |
Регистрация: 28.09.2007
Сообщений: 7
|
![]()
переписываю интерфес бухучета , у нас в ДОСе справляется с любыми
учетными задачами и особой потребности как бы нет но задолбали рассказы об устаревшем интерфейсе плюс появились дополнительные идеи которое в ДОС не удается реализовать Причем рассказы об устаревшем интерфейсе беспокоят менее всего т.к сам бухучет изобретен толи в 14 веке толи гдето близко к этому и до сих пор не устарел Мы работаем на внедрения в основном как бухгалтера и менее всего как программисты в силу этого уровень бухгалтерский выше любого встретившегося бухгалтера за последние 15 лет а на уровень программиста высокой квалификации не претендуем |
![]() |
![]() |
![]() |
#8 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
А чего на Делфе? Вроде 1С популярнее и луче для этого подходит.
I'm learning to live...
|
![]() |
![]() |
![]() |
#9 | |
я получил эту роль
Старожил
Регистрация: 25.05.2007
Сообщений: 3,694
|
![]() Цитата:
![]()
пыщь
|
|
![]() |
![]() |
![]() |
#10 |
Регистрация: 28.09.2007
Сообщений: 7
|
![]()
1с кроме красивых картинок , распечатки красивых первичных документов , назавания и обещания что посадим обезъянку она введет первичку а все остальное программа сделает сама , к бухучету отношения не имеет
Одна маленькая проблема реалий нашего рынка учет не нужен руководителям предприятий в большинстве, а тем кому нужен почемуто приходят к нам |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
В Memo сделать так, чтобы текст был разного цвета, разноцветный memo | Artem | Компоненты Delphi | 3 | 07.09.2007 13:40 |