SHARE
TWEET

_OneBigToolTip

bls000 Jun 5th, 2020 823 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <GuiToolTip.au3>
  2. #include <WinAPI.au3>
  3. #include <GUIConstantsEx.au3>
  4. #include <FontConstants.au3>
  5. #include <SendMessage.au3>
  6. #include <WindowsConstants.au3>
  7.  
  8.  
  9.  
  10. #Region _OneBigToolTip($btt_MSG,$btt_Temp,$btt_Left,$btt_Top,$btt_Size=False)
  11. #comments-start
  12. ; #FUNCTION# ====================================================================================================================
  13. ; Name ..........: _OneBigToolTip()
  14. ; Description ...: Cria um ToolTip de tamanhos variados
  15. ; Syntax ........: _OneBigToolTip($btt_MSG, $btt_Temp,$fSize=20,$BigTTFont='Tahoma',$BigTTposX= @DesktopWidth / 2, $BigTTposY= @DesktopHeight / 2,$BigTTiW=1,$BigTTTransf=0)
  16. ; Parameters ....: $btt_MSG  mensagem a ser exibida
  17. ;~                 $btt_Temp tempo da mensagem(False: exibirá a mensagem no tempo minimo de 100ms)
  18. ;~                 $fSize tamanho da fonte(False: exibirá a fonte com tamanho minimo de 10pt)
  19. ;~                 $BigTTFont fonte a ser usada, Courier, Courier New,Arial,Comic Sans MS, Verdana, Times New Roman mais em(https://www.autoitscript.com/autoit3/docs/appendix/fonts.htm)
  20. ;~                 $BigTTposX= posição horizontal(False: exibirá a partir do centro da tela na horizontal)
  21. ;~                 $BigTTposY= posição vertical(False: exibirá a partir do centro da tela na vertical)
  22. ;~                 $BigTTiW força do riscado da fonte(numeros não válidos não mostrarão efeitos), 0=normal 1=fino 2=negrito
  23. ;~                 $BigTTTransf: Transformação da fonte 0= itálico 1= Subilinhado 2=Riscado 3=Itálico+Subilinhado, 4=Itálico+Riscado,5=Subilinhado+Riscado,6=Itálico+Riscado+Subilinhado
  24. ; Return values .: Sucesso    - mensagem sendo exibida
  25. ; Author ........: BrewManNH,marsfann,blisszero (visite Forum AutoIT Brasil - http://forum.autoitbrasil.com/), https://www.autoitscript.com/forum/topic/179865-how-to-change-tooitip-font-size/
  26. ; Example .......: _OneBigToolTip('Mostrando um tooltip grande',2500,50,'Comic Sans MS')
  27. ; Remarks .......: ainda não é funcinal em scripts com algumas guis
  28. #comments-end
  29. Func _OneBigToolTip($btt_MSG, $btt_Temp=100,$fSize=20,$BigTTFont='Tahoma',$BigTTposX= @DesktopWidth / 2, $BigTTposY= @DesktopHeight / 2,$BigTTiW=1,$BigTTTransf=0,$BigTTBallon=0)
  30. If $BigTTposX= False Then $BigTTposX= @DesktopWidth / 2
  31. If $BigTTposY= False Then $BigTTposY= @DesktopHeight / 2
  32. If $btt_Temp < 100 Then $btt_Temp = 100
  33. If $fSize < 10 Then $fSize = 10
  34. If $BigTTTransf > 6 Then
  35.    $BigTTTransf = 0
  36. ElseIf $BigTTTransf < 0 Then
  37.    $BigTTTransf = 0
  38. EndIf
  39.  
  40.  
  41. ;~ determina que tipo de tooltip será exibido
  42. Switch $BigTTBallon
  43.    Case 0
  44.       $BigTTBallon = '0x01' ;sempre acima das janelas padrão
  45.    Case 1
  46.       $BigTTBallon = '0x40' ;Balão
  47.    Case 2
  48.       $BigTTBallon = '0x80' ;'X' para fechar
  49. EndSwitch
  50.  
  51. ;~ cria o tooltip
  52. Local $hToolTip = _GUIToolTip_Create(0,$TTS_CLOSE), $hDC = _WinAPI_GetDC(0)
  53. _GUIToolTip_SetMaxTipWidth($hToolTip, @DesktopWidth - $BigTTposX)
  54. WinSetOnTop ($hToolTip, "", $WINDOWS_ONTOP)
  55.  
  56. ;~ cria a fonte a ser executada no tolltip
  57. Switch $BigTTiW
  58.    Case 2
  59.       $BigTTiWeight = 800
  60.    Case 1
  61.       $BigTTiWeight = 100
  62.    Case Else
  63.       $BigTTiWeight = 500
  64. EndSwitch
  65.  
  66. Switch $BigTTTransf
  67.    Case 0
  68.       Local $hTransf_i = True, $hTransf_u = False, $hTransf_s = False
  69.    Case 1
  70.       Local $hTransf_i = False, $hTransf_u = True, $hTransf_s = False
  71.    Case 2
  72.       Local $hTransf_i = False, $hTransf_u = True, $hTransf_s = False
  73.    Case 3
  74.       Local $hTransf_i = True, $hTransf_u = True, $hTransf_s = False
  75.    Case 4
  76.       Local $hTransf_i = True,  $hTransf_u = False, $hTransf_s = True
  77.    Case 5
  78.       Local $hTransf_i = False, $hTransf_u = True, $hTransf_s = True
  79.    Case 6
  80.       Local $hTransf_i = True, $hTransf_u = True, $hTransf_s = True
  81.   Case Else
  82.       Local $hTransf_i = False, $hTransf_u = False, $hTransf_s = False
  83.    EndSwitch
  84.  
  85. Local $hFont = _WinAPI_CreateFont($fSize, 0, 0, 0, $BigTTiWeight, $hTransf_i, $hTransf_u, $hTransf_s, $DEFAULT_CHARSET, $OUT_DEFAULT_PRECIS, $CLIP_DEFAULT_PRECIS, $DEFAULT_QUALITY, 0, $BigTTFont)
  86.  
  87. Local $hOldFont = _WinAPI_SelectObject($hDC, $hFont)
  88. _SendMessage($hToolTip, $WM_SETFONT, $hFont, True)
  89.  
  90. ;~ prioriza a exibição da fonte
  91. _GUIToolTip_AddTool($hToolTip, 0, $btt_MSG, 0, 0, 0, 0, 0, BitOR($TTF_TRACK, $TTF_ABSOLUTE))
  92.  
  93. ;~ posição do tooltip
  94. _GUIToolTip_TrackPosition($hToolTip, $BigTTposX, $BigTTposY)
  95.  
  96. ;~ verifica atividade
  97. _GUIToolTip_TrackActivate($hToolTip, True, 0, 0)
  98.  
  99. ;~ tempo de exibição
  100. Sleep($btt_Temp)
  101.  
  102. ;~ apaga o ToolTip
  103. _GUIToolTip_Destroy($hToolTip)
  104.  
  105. EndFunc
  106.  
  107. #EndRegion
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top