Поиск:

Ответ в темуСоздание новой темы Создание опроса
> SetTitle() 
:(
    Опции темы
xTr1m
Дата 28.9.2005, 16:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 692
Регистрация: 9.2.2005
Где: Москва

Репутация: нет
Всего: 1



Здравствуйте. Тут такое дело, хочу поменять заголовок окна. Нашел, вроде бы, метод (SetTitle()), но почему то результата нету.

Код

void CFrame::OnRButtonDblClick()
{
       this->SetTitle("New title");
}



Но при двойном нажатии на форму заголовок не изменяется.
Пробовал сделать что то вроде

Код

void CFrame::OnPaint()
{
     this->SetTitle("New title");
     CPaintDC dc(this);
     dc.TextOut(100,100, this->GetTitle());
}


И при этом на форме пишется действительно New title. Но сам заголовок по прежнему не изменяется. Может я что-то не так сделал?

Это сообщение отредактировал(а) xTr1m - 28.9.2005, 16:38
PM MAIL WWW ICQ   Вверх
Dreamer_0x01
Дата 28.9.2005, 16:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Терминатор
**


Профиль
Группа: Участник
Сообщений: 780
Регистрация: 14.4.2005
Где: Санкт-Петербург

Репутация: 9
Всего: 12



Вместо SetTitle() используй SetWindowText()


--------------------
Нет ничего невозможного. Есть цели, и есть время и силы на их достижение.
PM ICQ   Вверх
xTr1m
Дата 28.9.2005, 17:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 692
Регистрация: 9.2.2005
Где: Москва

Репутация: нет
Всего: 1



Спасибо. А что, все таки, делает SetTitle(), просто интересно на будущее.
PM MAIL WWW ICQ   Вверх
Dreamer_0x01
Дата 28.9.2005, 17:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Терминатор
**


Профиль
Группа: Участник
Сообщений: 780
Регистрация: 14.4.2005
Где: Санкт-Петербург

Репутация: 9
Всего: 12



Не знаю ;)


--------------------
Нет ничего невозможного. Есть цели, и есть время и силы на их достижение.
PM ICQ   Вверх
Coocky
Дата 28.9.2005, 17:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


GUI гуру
****


Профиль
Группа: Участник Клуба
Сообщений: 2879
Регистрация: 16.2.2004
Где: Украина. Запорожь е

Репутация: 25
Всего: 62



Цитата(xTr1m @ 28.9.2005, 17:16)
А что, все таки, делает SetTitle(), просто интересно на будущее.

Как ни страно, устанавливает заголовок окна(для фрема)..И как ни страно-никогда не работает..почему-то.. smile



--------------------
Верю в смерть после жизни, в любовь после секса ,в крем после бритья smile        
PM ICQ   Вверх
xTr1m
Дата 28.9.2005, 17:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 692
Регистрация: 9.2.2005
Где: Москва

Репутация: нет
Всего: 1



И много в MFC таких "неработающих моментов" ?? А токак то обидно будет искать ошибку, которая на самом деле просто глюк smile
PM MAIL WWW ICQ   Вверх
Dreamer_0x01
Дата 28.9.2005, 18:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Терминатор
**


Профиль
Группа: Участник
Сообщений: 780
Регистрация: 14.4.2005
Где: Санкт-Петербург

Репутация: 9
Всего: 12



MFC - творение Microsoft...
Я думаю, это вполне исчерпывающий ответ ;)


--------------------
Нет ничего невозможного. Есть цели, и есть время и силы на их достижение.
PM ICQ   Вверх
Earnest
Дата 28.9.2005, 18:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 87
Всего: 183



Сами вы не работаете... smile

SetTitle не устанавливает заголовок фрейма непосредственно. Она задает дополнительные слова, которые приписываются к имени загруженного документа. Скажем, "Мое супер-мега приложение: <документ>". При этом сразу обновление заголовка не происходит, т.к. SetTitle просто меняет внутреннюю переменную CFrameWnd. Чтобы обновить заголовок немедленно, нужно вызвать OnUpdateFrameTitle, если можете потерпеть до входа в Idle, то DelayUpdateFrameTitle.


--------------------
...
PM   Вверх
Dreamer_0x01
Дата 28.9.2005, 18:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Терминатор
**


Профиль
Группа: Участник
Сообщений: 780
Регистрация: 14.4.2005
Где: Санкт-Петербург

Репутация: 9
Всего: 12



ух ты...


--------------------
Нет ничего невозможного. Есть цели, и есть время и силы на их достижение.
PM ICQ   Вверх
Coocky
Дата 29.9.2005, 10:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


GUI гуру
****


Профиль
Группа: Участник Клуба
Сообщений: 2879
Регистрация: 16.2.2004
Где: Украина. Запорожь е

Репутация: 25
Всего: 62



Цитата(Earnest @ 28.9.2005, 18:16)
Чтобы обновить заголовок немедленно, нужно вызвать OnUpdateFrameTitle, если можете потерпеть до входа в Idle, то DelayUpdateFrameTitle.

Хех! Супер, но почему в МСДН про это не сказано?
От меня + smile



--------------------
Верю в смерть после жизни, в любовь после секса ,в крем после бритья smile        
PM ICQ   Вверх
Dreamer_0x01
Дата 29.9.2005, 12:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Терминатор
**


Профиль
Группа: Участник
Сообщений: 780
Регистрация: 14.4.2005
Где: Санкт-Петербург

Репутация: 9
Всего: 12



Цитата(Coocky @ 29.9.2005, 10:12)
От меня +

правильное решение. Умная,однако ;)


--------------------
Нет ничего невозможного. Есть цели, и есть время и силы на их достижение.
PM ICQ   Вверх
takedo
Дата 29.9.2005, 13:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 501
Регистрация: 1.6.2005

Репутация: нет
Всего: 3



Dreamer_0x01
Цитата
MFC - творение Microsoft...
Я думаю, это вполне исчерпывающий ответ ;)

Например я с помощью виндовс в данный момент кушаю свой кусочек хлеба, поэтому предлагаю не хаять таки виндовс. Зачастую мы сами многого просто не знаем. Есть там непонятные моменты - частенько ответы на них находятся в незадокументированных функциях - это плохо, но енто так. smile


--------------------
я не гольфист - я хоккеист
PM MAIL   Вверх
Earnest
Дата 30.9.2005, 07:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 87
Всего: 183



Цитата(Coocky @ 29.9.2005, 10:12)
Хех! Супер, но почему в МСДН про это не сказано?
На самом деле, где-то написано (в Tecnical notes), но весьма вскользь, специально не найдешь. Но не в этом суть. С MFC вообще проблем нет - есть ведь код.

smile
Видимо последние версии MSDN настолько приличны, что люди разбаловались smile . Когда я изучала MFC (давно!) хелп безбожно, скажем так, умалчивал обо всем, кроме самого примитива. Так что поневоле приходилось лезть в код. Чего и вам искренне желаю - тогда 50% вопросов просто отпадут сами собой. Даже 90.



--------------------
...
PM   Вверх
The Thing
Дата 30.9.2005, 13:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 286
Регистрация: 6.9.2004

Репутация: 1
Всего: 3



... сначало напсал сообщение, потом внматльней прочел форум.. и решл го удалить..

Это сообщение отредактировал(а) The Thing - 30.9.2005, 13:53


--------------------
Правильность работы программы зависит от двух велечин.
В нужном месте должны стоять нолик и еденичка.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




[ Время генерации скрипта: 0.0857 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.