![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| DENNN |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3878 Регистрация: 27.3.2002 Где: Москва Репутация: 1 Всего: 43 |
Вроде и я начинаю соображать. С твоей помощью Step
|
|||
|
||||
| Step |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5151 Регистрация: 26.9.2002 Где: дурдом.UA Репутация: 5 Всего: 25 |
я б тебе полный код дал да только у меня машина с визуалом в другом кабинете и от сети отсоедина, дискетами не пользуемся а по памяти писать в лом
-------------------- - Дурак учится на своих ошибках, умный на чужих. - умные учатся у дураков |
|||
|
||||
| DENNN |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3878 Регистрация: 27.3.2002 Где: Москва Репутация: 1 Всего: 43 |
Ты как стоматолог объясни простую вещь:
CRichEditCtrl на вызов GetFont() возвращает NULL. И птицу обломинго. А практические (читай настоящие) знания я так же как ты получал Только через голову |
|||
|
||||
| Step |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5151 Регистрация: 26.9.2002 Где: дурдом.UA Репутация: 5 Всего: 25 |
а ты не вызывай из сричедитконтр, ты в класе диалога вызывай эту функцию, и получиш то что нужно, а в ричедит ты еще фонта не создовал он там унаследовался от диалога поэтому и нул
-------------------- - Дурак учится на своих ошибках, умный на чужих. - умные учатся у дураков |
|||
|
||||
| Step |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5151 Регистрация: 26.9.2002 Где: дурдом.UA Репутация: 5 Всего: 25 |
СFont * f=GetFont(); у меня возращает не нул
-------------------- - Дурак учится на своих ошибках, умный на чужих. - умные учатся у дураков |
|||
|
||||
| Step |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5151 Регистрация: 26.9.2002 Где: дурдом.UA Репутация: 5 Всего: 25 |
если захочеш изменять фонт не забывай выбирать объект, после выбора фонта, Гетфонт возвращает выбраный объект на сколько я понимаю
-------------------- - Дурак учится на своих ошибках, умный на чужих. - умные учатся у дураков |
|||
|
||||
| DENNN |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3878 Регистрация: 27.3.2002 Где: Москва Репутация: 1 Всего: 43 |
Высота окна в пикселах 91, а m_logs.GetDC()->GetDeviceCaps(LOGPIXELSY) дает 96 Я же говорю, что сегодня не соображаю. Чему равна высота символа в пикселах? |
|||
|
||||
| Step |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5151 Регистрация: 26.9.2002 Где: дурдом.UA Репутация: 5 Всего: 25 |
зачем ты умнажает у меня высота сивола получается -11, делишь высоту элемента на модуль высоты символа зачем ты сюда еще уножения на количество пикселей на дюйм делаеш - это нужно использовать только при эргономики
-------------------- - Дурак учится на своих ошибках, умный на чужих. - умные учатся у дураков |
|||
|
||||
| DENNN |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3878 Регистрация: 27.3.2002 Где: Москва Репутация: 1 Всего: 43 |
У меня тоже, только в мсдн написано, что GetDeviceCaps(LOGPIXELSY) возвращает кол-во пикселов по-высоте на один логический инч, а fnt.lfHeight указывает высоту шрифта в логических единицах. |
|||
|
||||
| Step |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5151 Регистрация: 26.9.2002 Где: дурдом.UA Репутация: 5 Всего: 25 |
врядли в логических
-------------------- - Дурак учится на своих ошибках, умный на чужих. - умные учатся у дураков |
|||
|
||||
| Step |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5151 Регистрация: 26.9.2002 Где: дурдом.UA Репутация: 5 Всего: 25 |
CFont * g=GetFont();
LOGFONT y; g->GetLogFont(&y); int a=m_qw.GetLineCount(); CRect p; m_qw.GetRect(&p); a=(int)((p.bottom-p.top)/(-MulDiv(y.lfHeight,GetDeviceCaps(m_qw.GetDC()->m_hDC, LOGPIXELSY), 72))); в а получаеш количество строк в элементе управления, получаеш только количесво полных строк т.е. последняя если отображается не полностью то не считается -------------------- - Дурак учится на своих ошибках, умный на чужих. - умные учатся у дураков |
|||
|
||||
| DENNN |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3878 Регистрация: 27.3.2002 Где: Москва Репутация: 1 Всего: 43 |
Спасибо Step.
-MulDiv(fnt.lfHeight,m_logs.GetDC()->GetDeviceCaps(LOGPIXELSY),72) - все получилось! |
|||
|
||||
| Step |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5151 Регистрация: 26.9.2002 Где: дурдом.UA Репутация: 5 Всего: 25 |
DENNN там в мсдне была маленькая дописочка по этому поводу
-------------------- - Дурак учится на своих ошибках, умный на чужих. - умные учатся у дураков |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |