Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Изменение цвета текста в заголовке формы? 
:(
    Опции темы
Vitaly333
Дата 13.5.2007, 14:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Данный вопрос на форуме уже поднимался но вразумительного ответа на него я пока не нашел
PM MAIL   Вверх
jonie
Дата 13.5.2007, 18:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 7
Всего: 118



за перерисовку (как собственно и за все другое НЕ клиенское) отвечают сообщения WM_NC* (от non-client)
Т.о. надо перехватить сообщение WM_NCPAINT, а далее рисуйте что хотите TextOut - ом ....


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
Klin
Дата 13.5.2007, 19:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Легче создать свой собственный. Про перемещение не за заголовок можите прочитать в FAQ.


--------------------
Я человек - попробуйте обвинить меня за это.
PM MAIL   Вверх
mr.Anderson
Дата 13.5.2007, 19:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


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

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



Еще как вариант (еще более простой) - сделать рамку формы как bsNone и нарисовать собственную полосу заголовка (ну, и с собственными кнопками свернуть/развернуть/закрыть, если надо). Элементарно, и можно сделать заголовок вообще любым шрифтом и цветом. smile


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
Klin
Дата 13.5.2007, 21:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



mr.Anderson, а я о чем? smile Я и имел ввиду создать какой-нибудь TPanel, на него можно добавить изображения для понтов или просто изменить шрифт у Panel.


--------------------
Я человек - попробуйте обвинить меня за это.
PM MAIL   Вверх
mr.Anderson
Дата 14.5.2007, 13:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


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

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



Klin, а я имел в виду не TPanel, а TImage. smile Только TImage в качестве заголовка, куда тут еще панель-то засовывать?

Это сообщение отредактировал(а) mr.Anderson - 14.5.2007, 13:18


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
Klin
Дата 14.5.2007, 16:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Цитата(mr.Anderson @  14.5.2007,  14:17 Найти цитируемый пост)
Только TImage в качестве заголовка, куда тут еще панель-то засовывать?

гы-гы, а доп. кнопки будут просто нарисованы, или попросим пользователя окошечко клавой закрывать? smile

Добавлено через 3 минуты и 11 секунд
можно конечно обработчик для этого написать, но зачем лишний геморой?


--------------------
Я человек - попробуйте обвинить меня за это.
PM MAIL   Вверх
Dem_max
Дата 14.5.2007, 18:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1780
Регистрация: 12.4.2007

Репутация: 14
Всего: 39



Просто в качестве варианта тебе предложили рисовать свои кнопки на TImage, ставишь свойство формы bsNone.
картинку прилагаю 

Присоединённый файл ( Кол-во скачиваний: 15 )
Присоединённый файл  Buttons.PNG 1,00 Kb


--------------------
Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte")
PM MAIL   Вверх
Klin
Дата 14.5.2007, 18:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Dem_max, это вы вовремя предложили smile

Добавлено через 2 минуты и 28 секунд
в принципе, и без панели, можно обойтись, только тогда не канвой, а обычные image добавлять придеться (их их перемещать при действиях с формой)


--------------------
Я человек - попробуйте обвинить меня за это.
PM MAIL   Вверх
jonie
Дата 14.5.2007, 22:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 7
Всего: 118



и всеже отвечая "по топу", чем вам не нравится субклассирование окна?а дальше отлавливайте все что хотите и рисуйте где и чего хотите)
Код

//---------------------------------------------------------------------------
LRESULT CALLBACK NewWindowProc(HWND hWnd, UINT msg, WPARAM w,
LPARAM l)
{
  if(msg==WM_NCPAINT){
        TCanvas* canvas = new TCanvas();
        canvas->Handle = GetWindowDC(Form1->Handle);
        canvas->Brush->Color = clRed;
        canvas->Rectangle(0,0,300,10);
        ReleaseDC(Form1->Handle,canvas->Handle);
        delete canvas;
       return 0; //break process this message
  }
  return CallWindowProc((FARPROC)Form1->OldWndProc, hWnd, msg, w, l);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
 OldWindowProc = (WNDPROC)SetWindowLong(Handle, GWL_WNDPROC, (long)NewWindowProc);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormDestroy(TObject *Sender)
{
 SetWindowLong(Handle, GWL_WNDPROC, (long)OldWindowProc);
}
//---------------------------------------------------------------------------
 симитировать мб и проще, но офтоп))

зЫ: в билдере не рублю, потому делал как знаю)


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
Klin
Дата 14.5.2007, 23:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Цитата(jonie @  14.5.2007,  23:47 Найти цитируемый пост)
чем вам не нравится субклассирование окна?

Да нормуль все, просто новичку, гораздо легче добавить рисунок и сделать из него заголовок, чем изменить стандартный. Операции легче, эффекту больше smile


--------------------
Я человек - попробуйте обвинить меня за это.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




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


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

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