Вверх ↑
Этот топик читают: Гость
Разработчик
Ответов: 26066
Рейтинг: 2120
#16: 2012-02-13 12:52:34 ЛС | профиль | цитата
Tad писал(а):
ты бы лучше добавил в Img_Text ориентацию

Думал уже, не получается. Там используется KOL функция создания фонта, а не API. Попробуй сам сделать.
------------ Дoбавленo в 12.52:
Tad писал(а):
No problem

Ню-ню. Ты XP стиль поставь...
карма: 22

0
Ответов: 8888
Рейтинг: 823
#17: 2012-02-13 13:04:49 ЛС | профиль | цитата
nesco, ни одного раза стиль XP не ставил, и ничего, жив и здоров (тьфу, тьфу, не сглазить бы )
карма: 19

0
Разработчик
Ответов: 26066
Рейтинг: 2120
#18: 2012-02-13 13:19:12 ЛС | профиль | цитата
Леонид писал(а):
ни одного раза стиль XP не ставил, и ничего, жив и здоров

Ты это молодым пользователям расскажи, а не мне.
Я разве не сказал, ну тогда скажу -- все это полумеры или недомеры, если стандартная кнопка не поддерживает пользовательскую отрисовку, то нехрен пытаться туда ее засунуть.
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#19: 2012-02-13 14:31:59 ЛС | профиль | цитата
nesco писал(а):
Ты XP стиль поставь
nesco писал(а):
с синхроннрй перерисовкой текста при нажатии
При ХР-стиле нет и синхронной перерисовки текста при нажатии на обыкновенной кнопке.

карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26066
Рейтинг: 2120
#20: 2012-02-13 14:35:36 ЛС | профиль | цитата
Tad писал(а):
При ХР-стиле нет и синхронной перерисовки текста при нажатии на обыкновенной кнопке

Интересно, а как тогда на ней Caption отображается
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#21: 2012-02-13 15:34:53 ЛС | профиль | цитата
А хез. Во всяком случае сдвига Caption не вижу.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26066
Рейтинг: 2120
#22: 2012-02-13 17:44:02 ЛС | профиль | цитата
Tad, глянул KOL, там у класса TGraphicTool есть свойство FontOrientation, но оно, сволочь, у меня не прокатило
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#23: 2012-02-13 18:16:35 ЛС | профиль | цитата
FontEscapement нужно использовать, Orientation и в TLogFont не катит.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26066
Рейтинг: 2120
#24: 2012-02-13 19:21:01 ЛС | профиль | цитата
Tad, ну ты попробуй, может чего и получится. Если удастся, то без проблем добавим
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#25: 2012-02-13 19:44:34 ЛС | профиль | цитата
Tad писал(а):
ну ты попробуй
раньше четверга никак.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Гость
Ответов: 17029
Рейтинг: 0
#26: 2012-02-13 20:01:30 правка | ЛС | профиль | цитата


Редактировалось 5 раз(а), последний 2021-06-22 13:16:51
карма: 0

0
Разработчик
Ответов: 26066
Рейтинг: 2120
#27: 2012-02-13 20:21:49 ЛС | профиль | цитата
Tad писал(а):
раньше четверга никак.

Столько лет терпело, думаю, что до четверга потерпит
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#28: 2012-02-14 20:17:52 ЛС | профиль | цитата
nesco, начал с самого начала и... запутался я с Font-ом.
Share.pas писал(а):
TFontRec = record
Name:string;
Size:byte;
Style:byte;
Color:TColor;
CharSet:byte;
end;
PFontRec = ^TFontRec;
Насколько я понял - это то, что мы получаем при выборе фонта компонента ?
Нашел, что Orientation в системах NT не работает. Работает только Escapement
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26066
Рейтинг: 2120
#29: 2012-02-14 20:33:11 ЛС | профиль | цитата
Tad, забей на TFontRec, надо юзать TGraphicTool
------------ Дoбавленo в 20.33:
Кстати, свойство FontOrientation класса TGraphicTopl использует функцию KOL SetFontOrientation


{$IFDEF ASM_VERSION}
//[procedure TGraphicTool.SetFontOrientation]
procedure TGraphicTool.SetFontOrientation(Value: Integer);
asm
PUSH EAX
@@1: MOV EAX, EDX
MOV ECX, 3600
CDQ
IDIV ECX // EDX = Value mod 3600
POP EAX

MOV byte ptr [GlobalGraphics_UseFontOrient], 1
MOV [GlobalCanvas_OnTextArea], offset[TextAreaEx]

MOV [EAX].fData.Font.Escapement, EDX
MOV ECX, EDX
MOV DX, go_FontOrientation
CALL SetInt
end;
{$ELSE ASM_VERSION} //Pascal
procedure TGraphicTool.SetFontOrientation(Value: Integer);
begin
GlobalGraphics_UseFontOrient := True;
GlobalCanvas_OnTextArea := TextAreaEx;
Value := Value mod 3600; // -3599..+3599
SetInt( go_FontOrientation, Value );
SetInt( go_FontEscapement, Value );
end;
{$ENDIF ASM_VERSION}

Как видно, там используется FontEscapement, но не у меня это безобразие не заработало
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#30: 2012-02-14 20:34:02 ЛС | профиль | цитата
Но мы же выбираем Font для компонента и получаем результат в формате TFontRec.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)