![]() |
|
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]()
|
|
| andrew_121 |
|
|||
![]() Кодофей ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3448 Регистрация: 3.1.2008 Репутация: 2 Всего: 33 |
Дарова!
Собственно это и есть вопрос. Заранее спасибо! -------------------- Удалил аккаунт. Прощайте! |
|||
|
||||
| GremlinProg |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2706 Регистрация: 9.8.2005 Где: Тюмень Репутация: 99 Всего: 106 |
о чем вопрос-то?
какие подкаталоги, почему слева, и при чем тут строка? так топик ни кто не поймет, объяснять надо, andrew_121! -------------------- "Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины." |
|||
|
||||
| andrew_121 |
|
|||
![]() Кодофей ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3448 Регистрация: 3.1.2008 Репутация: 2 Всего: 33 |
На форме есть Static, в него вписывается путь к каталогу. Так вот когда вписываю строку длинее чем вмещается, хотелось бы ее минимизировать, усекая часть пути, и заменяя ее точками.
Все не раз видели такое. Сорри за первый пост. -------------------- Удалил аккаунт. Прощайте! |
|||
|
||||
| SenkraD |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 933 Регистрация: 3.2.2006 Где: Украина::Киев Репутация: 4 Всего: 23 |
andrew_121, ну как я понял со стоками мы работать умеет,
так что проблемма в том чтобы получить длину строки в пикселях? Если мо предположение правильные то
Это сообщение отредактировал(а) SenkraD - 14.5.2009, 19:10 |
|||
|
||||
| dumb |
|
|||
![]() sceloglauxalbifacies ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2929 Регистрация: 16.6.2006 Репутация: 27 Всего: 158 |
DrawText + DT_PATH_ELLIPSIS
|
|||
|
||||
| andrew_121 |
|
|||
![]() Кодофей ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3448 Регистрация: 3.1.2008 Репутация: 2 Всего: 33 |
Гы... ) А как у Static-а, созданого средствами WinAPI получить сие? -------------------- Удалил аккаунт. Прощайте! |
|||
|
||||
| GremlinProg |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2706 Регистрация: 9.8.2005 Где: Тюмень Репутация: 99 Всего: 106 |
то, что все не раз видели, это скорее PathCompactPath из shlwapi:
-------------------- "Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины." |
|||
|
||||
| andrew_121 |
|
|||
![]() Кодофей ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3448 Регистрация: 3.1.2008 Репутация: 2 Всего: 33 |
А как у Static-а, созданого средствами WinAPI получить HDC ?
-------------------- Удалил аккаунт. Прощайте! |
|||
|
||||
| GremlinProg |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2706 Регистрация: 9.8.2005 Где: Тюмень Репутация: 99 Всего: 106 |
-------------------- "Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины." |
|||
|
||||
| andrew_121 |
|
|||
![]() Кодофей ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3448 Регистрация: 3.1.2008 Репутация: 2 Всего: 33 |
GremlinProg, Спасибо!
-------------------- Удалил аккаунт. Прощайте! |
|||
|
||||
| artsb |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2280 Регистрация: 17.7.2007 Где: центр Вселенной Репутация: 5 Всего: 64 |
andrew_121, тебе же dumb написал про DrawText. Чего ты паришься?
Или ты любишь поизвращаться -------------------- Чем отличается умный человек от мудрого? Умный - выпутается из любой ситуации. Мудрый - просто в неё не попадёт. |
|||
|
||||
| andrew_121 |
|
|||
![]() Кодофей ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3448 Регистрация: 3.1.2008 Репутация: 2 Всего: 33 |
artsb,
Так тут и нужен HDC. -------------------- Удалил аккаунт. Прощайте! |
|||
|
||||
| artsb |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2280 Регистрация: 17.7.2007 Где: центр Вселенной Репутация: 5 Всего: 64 |
В качестве первого параметра можно передать хедл любого канваса. А в данном случае вроде можно просто передать NULL, т.к. от него всё равно толку нет Добавлено @ 18:13 На счёт NULL я погорячился Ещё нужен флаг DT_MODIFYSTRING:
тогда в asText будет хранить изменённая строка. Единственно (только сейчас заметил), строка будет иметь вид:
:( Похоже, придётся поизвращаться Это сообщение отредактировал(а) artsb - 15.5.2009, 18:30 -------------------- Чем отличается умный человек от мудрого? Умный - выпутается из любой ситуации. Мудрый - просто в неё не попадёт. |
||||
|
|||||
| GremlinProg |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2706 Регистрация: 9.8.2005 Где: Тюмень Репутация: 99 Всего: 106 |
конечно можно, но статику, как и любым другим контролам можно выставить шрифт, отличающийся от встроенного в таком случае, как DrawText с DT_PATH_ELLIPSIS, так и PathCompactPath правильных габаритов текста для этого статика уже не посчитают, т.е. будут либо обрезать строку там, где ее обрезать не нужно, либо обрезать за габаритами, в зависимотси от разницы ширин текста на этих девайсах -------------------- "Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины." |
|||
|
||||
| artsb |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2280 Регистрация: 17.7.2007 Где: центр Вселенной Репутация: 5 Всего: 64 |
Об этом я не подумал. Спасибо GremlinProg. Добавлено через 2 минуты и 28 секунд Хотя погоди. DrawText просит канву, на которой собирается рисовать. Скорее всего она учитывает шрифт... -------------------- Чем отличается умный человек от мудрого? Умный - выпутается из любой ситуации. Мудрый - просто в неё не попадёт. |
|||
|
||||
| GremlinProg |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2706 Регистрация: 9.8.2005 Где: Тюмень Репутация: 99 Всего: 106 |
по крайней мере, можно просто учесть шрифт:
тогда пойдет любой HDC, хоть десктопа: GetDC(HWND_DESKTOP) Добавлено через 3 минуты и 49 секунд да нет, ей в принципе без разницы на чем рисовать шрифт с окна функции GDI сами не устанавливают, иначе мы не могли бы его сменить, кроме как явной посылкой WM_SETFONT -------------------- "Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины." |
|||
|
||||
| artsb |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2280 Регистрация: 17.7.2007 Где: центр Вселенной Репутация: 5 Всего: 64 |
Вот:
Конечно можно было создать объект канвы в функции и юзать его, но это же время и ресурсы ЗЫ не смотря на то, что это изврат, не бейте сильно -------------------- Чем отличается умный человек от мудрого? Умный - выпутается из любой ситуации. Мудрый - просто в неё не попадёт. |
|||
|
||||
| GremlinProg |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2706 Регистрация: 9.8.2005 Где: Тюмень Репутация: 99 Всего: 106 |
это делает DrawText с флагом DT_END_ELLIPSIS или пословно, с флагом DT_WORD_ELLIPSIS только не "три точки", а "троеточие", одним символом Добавлено через 1 минуту и 59 секунд а, ну да, не заметил, не последние, а первые символы но в любом случае, это не задача топика -------------------- "Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины." |
|||
|
||||
| artsb |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2280 Регистрация: 17.7.2007 Где: центр Вселенной Репутация: 5 Всего: 64 |
Или я не правильно понял? -------------------- Чем отличается умный человек от мудрого? Умный - выпутается из любой ситуации. Мудрый - просто в неё не попадёт. |
|||
|
||||
| GremlinProg |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2706 Регистрация: 9.8.2005 Где: Тюмень Репутация: 99 Всего: 106 |
не символы, а подкаталоги:
два варианта уже предложены -------------------- "Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины." |
|||
|
||||
| artsb |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2280 Регистрация: 17.7.2007 Где: центр Вселенной Репутация: 5 Всего: 64 |
Изначально я думал, что нужно получить строку вида:
Если это так, то ничего не мешает добавить в моей функции пару строк:
Если же нужен такой вариант как написал GremlinProg, то как мне кажется, DrawText будет в самый раз -------------------- Чем отличается умный человек от мудрого? Умный - выпутается из любой ситуации. Мудрый - просто в неё не попадёт. |
||||
|
|||||
![]()
|
| Правила форума "C/C++: Системное программирование и WinAPI" | |
|
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |