Что нового

Замена заголовка окна

CrazyDoc

Новичок
Сообщения
75
Репутация
2
Эта тема в продолжение к: http://autoit-script.ru/index.php?topic=21295.0
Возможно ли нарисовать свой заголовок поверх активного окна? Соответственно следить за изменениями размера окна и перерисовывать при необходимости. Если кто-нибудь представляет как это можно сделать, пожалуйста, опишите необходимые инструменты.
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
Вы можете сменить заголовок необходимого окна. И изменить его размеры.

Код:
WinSetTitle()
WinMove()
 
Автор
C

CrazyDoc

Новичок
Сообщения
75
Репутация
2
Medic84 сказал(а):
Вы можете сменить заголовок необходимого окна. И изменить его размеры.

Код:
WinSetTitle()
WinMove()

Спасибо, забыл уточнить - сменить нужно цвет шапки(изменения текста, его цвета недостаточны) . Чтобы сразу бросалось в глаза. Изменение цвета шапки возможно только без использования тем Win - поэтому ищется вариант нарисовать поверх свою.
 

InnI

AutoIT Гуру
Сообщения
4,912
Репутация
1,429
CrazyDoc
свой заголовок поверх активного окна
Вот простой пример. Прямоугольник, "прозрачный" для клика, в центре заголовка активного окна
Код:
#include <WindowsConstants.au3>

$GUI = GUICreate("", 120, 24, 10, 10, $WS_POPUP, BitOR($WS_EX_TOPMOST, $WS_EX_TOOLWINDOW, $WS_EX_TRANSPARENT))
GUISetBkColor(0xFF0000)
WinSetTrans($GUI, "", 128)
GUISetState(@SW_SHOWNA)

While Sleep(10)
  $Pos = WinGetPos("[active]")
  If IsArray($Pos) Then WinMove($GUI, "", $Pos[0] + $Pos[2] / 2 - 120 / 2, $Pos[1] + 4)
  WinSetOnTop($GUI, "", 1)
WEnd
 
Верх