Что нового

Отображение Tooltip до конца выполнения программы

McLotos

Новичок
Сообщения
20
Репутация
0
Добрый день. Хотелось бы узнать как сделать так чтобы tooltip показывался на протяжении всей работы программы.
Пробовал вставлять его в цикл, но тогда он мигает, а нужно чтобы надпись просто висела. Или может быть есть вариант использования SplashTextOn чтобы он выглядел как tooltip?
 

WSWR

AutoIT Гуру
Сообщения
941
Репутация
363
McLotos

Можно рисовать свое окно наподобие подсказки:

Код:
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

$hGUI = GUICreate('Timer', 100, 50, -1, -1, BitOR($WS_POPUP, $WS_BORDER), BitOR($WS_EX_TOOLWINDOW, $WS_EX_TOPMOST))

GUISetState()

$hLabel = GUICtrlCreateLabel('Tooltip', 0, 0, 100, 50)
GUICtrlSetFont(-1, 10, 400)
GUICtrlSetColor(-1, 0x000000)
GUICtrlSetBkColor(-1, 0xF5E78B)
;WinSetTrans('Timer', '', 200)

For $i = 1 To 100
    Sleep(100) ; программа работает 10 сек
Next
 

InnI

AutoIT Гуру
Сообщения
4,922
Репутация
1,432
McLotos [?]
Хотелось бы узнать как сделать так чтобы tooltip показывался на протяжении всей работы программы.
В справке так и указано:
Код:
Всплывающая подсказка будет отображаться до завершения скрипта или до вызова ToolTip("").
 

AZJIO

Меценат
Меценат
Сообщения
2,879
Репутация
1,194
McLotos [?]
Хотелось бы узнать как сделать так чтобы tooltip показывался на протяжении всей работы программы.
Он так и показывается как говоришь.
Пробовал вставлять его в цикл, но тогда он мигает, а нужно чтобы надпись просто висела.
Вопрос содержит ответ "вставлять его в цикл", зачем его рисовать то многократно?

Может требуется независимый tooltip? Ниже пример. Описание функции здесь
Код:
#include <GUIToolTip.au3>
#include <FontConstants.au3>

Global $aInfo[6][2] = [[ _
		'Задание', '1'],[ _
		'Номер ошибки', '2'],[ _
		'Время начала', '3'],[ _
		'Время окончания', '4'],[ _
		'Время выполнения', '5'],[ _
		'Описание ошибки', '6']]

$sText = ''
For $i = 0 To 5
	_StringFormat($sText, $aInfo[$i][0], $aInfo[$i][1])
Next
$sText = StringTrimRight($sText, 1)

Func _StringFormat(ByRef $sText, $sString1, $sString2)
	$sText &= StringFormat("%-18s: %s\n", $sString1, $sString2)
EndFunc   ;==>_StringFormat
; MsgBox(0, 'Сообщение', $sText)

; Получает дескриптор иконки
$hIcon = _WinAPI_LoadShell32Icon(15)

$hTool = _ToolTip($sText, 500, 300, 'Информация', $hIcon, $TTS_NOPREFIX  + $TTS_BALLOON, 16, 'Consolas', 0x1EBFFF, 0x395A00)
$hFont = @extended


$hTool2 = _ToolTip($sText, 100, 100, 'Информация', $hIcon, $TTS_NOPREFIX  + $TTS_BALLOON, 16, 'Consolas', 0x1EBFFF, 0x395A00)
; остальное здесь http://pastebin.com/EVPZK1s8
 
Верх