Ir para conteúdo


Belini

Cadastrado: 24 Ago 2011
Offline Última atividade: Ontem, 10:21
*****

Tópicos que criei

Centralizar texto em ComboBox

09 julho 2017 - 08:00

Quando crio uma ComboBox não tenho a opção de escolher a posição que o texto vai ficar e por padrão só fica à esquerda, tem como colocar prá mostrar centralizado?


Mensagem na tela sem usar GDI

05 julho 2017 - 10:21

Estou tentando colocar um texto na tela sem usar GDI e até já consegui porém quando troco a mensagem ela sobrepõe a antiga ao invés de substituir,  não apaga a anterior nem mesmo colocando em loop um conteúdo em branco, vou postar o código prá ver alguém sabe como devo fazer para limpar uma mensagem antes de mostrar a outra!

 


_INetGetSource() as vezes não retorna dados!

30 junho 2017 - 09:25

Fiz um teste usando o _INetGetSource() e em alguns lugares não tive nenhum retorno como é o caso aqui do forum mesmo, alguém sabe por qual motivo em alguns lugares não tenho retorno desta função?

 

TESTE:

  1.  
  2. #include <Inet.au3>
  3.  
  4. $html_source = _INetGetSource("http://forum.autoitbrasil.com")
  5. ConsoleWrite($html_source & " FIM DO TESTE!" & @crlf)

Impedir que programa seja fechado!

13 junho 2017 - 08:26

Alguém sabe como abrir um programa como se fosse do sistem e que não aceitasse ser fechado a força? Queria que só fechasse se o comando fizesse parte dele tipo enviou ESC fecha mas se tentar fechar por outro meio não ter como!


Problema com mensagem usando GDIPlus

02 maio 2017 - 10:02

Peguei um exemplo que mostra uma imagem e um um texto usando GDIPlus mas encontrei 3 problemas e só consegui resolver um deles, o primeiro era limpar a mensagem anterior para mostrar a próxima e este eu resolvi ocultando e depois mostrando novamente a GUI filha porém o segundo que é trocar a cor da fonte e o 3º que é um serilhado branco em algumas letras também não consegui tirar, segue o script para teste!

  1.  
  2. #include <guiconstantsex.au3>
  3. #include <windowsconstants.au3>
  4. #include <gdiplus.au3>
  5.  
  6. Global $hGUI, $hImage, $hGraphic, $hImage, $conta
  7.  
  8. _GDIPlus_Startup()
  9. ; Load PNG image
  10. $hImage = _GDIPlus_ImageLoadFromFile(StringReplace(@AutoItExe, "autoit3.exe", "Examples\GUI\Torus.png"))
  11. $iWidth = _GDIPlus_ImageGetWidth($hImage)
  12. $iHeight = _GDIPlus_ImageGetHeight($hImage)
  13.  
  14. ; Create GUI
  15. $hGUI = GUICreate("Show PNG", $iWidth, $iHeight, -1, -1, $WS_POPUP, $WS_EX_LAYERED + $WS_EX_TOPMOST)
  16. $hGUI_child = GUICreate("", $iWidth, $iHeight, 0, 0, $WS_POPUP, $WS_EX_LAYERED + $WS_EX_TOPMOST + $WS_EX_MDICHILD, $hGUI)
  17. $hButton = GUICtrlCreateButton("Texto", $iWidth * 2 / 3, $iHeight * 2 / 3, 40, 40)
  18. GUISetBkColor(0xFFFFFF, $hGUI_child)
  19. GUISetState(@SW_SHOW, $hGUI)
  20. GUISetState(@SW_SHOW, $hGUI_child)
  21. SetTransparentBitmap($hGUI, $hImage)
  22. _WinAPI_SetLayeredWindowAttributes($hGUI_child, 0xFFFFFF, 0xFF)
  23.  
  24. $hGraphic = _GDIPlus_GraphicsCreateFromHWND($hGUI_child)
  25. _GDIPlus_GraphicsSetSmoothingMode($hGraphic, 2)
  26. _GDIPlus_GraphicsDrawString($hGraphic, "GDI+ Full Transparency", 0, $iHeight / 2 - 20, "Arial", 12)
  27.  
  28.  
  29. While 1
  30. $nMsg = GUIGetMsg()
  31. Switch $nMsg
  32. Case $GUI_EVENT_CLOSE
  33. _GDIPlus_ImageDispose($hImage)
  34. _GDIPlus_GraphicsDispose($hGraphic)
  35. _GDIPlus_Shutdown()
  36. Case $hButton
  37. ;GUISetState(@SW_HIDE, $hGUI_child); Oculta para limpar a mensagem anterior (retire o ponto e vírgulas para limpar)
  38. $conta += 1
  39. GUISetState(@SW_SHOW, $hGUI_child); Mostra novamente a mensagem
  40. _GDIPlus_GraphicsDrawString($hGraphic, "TESTANDO: " & $conta, 0, $iHeight / 2 - 20, "Arial Black", 16)
  41. EndSwitch
  42. WEnd
  43.  
  44. Func SetTransparentBitmap($hGUI, $hImage, $iOpacity = 0xFF)
  45. Local $hScrDC, $hMemDC, $hBitmap, $hOld, $pSize, $tSize, $pSource, $tSource, $pBlend, $tBlend
  46. $hScrDC = _WinAPI_GetDC(0)
  47. $hMemDC = _WinAPI_CreateCompatibleDC($hScrDC)
  48. $hBitmap = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImage)
  49. $hOld = _WinAPI_SelectObject($hMemDC, $hBitmap)
  50. $tSize = DllStructCreate($tagSIZE)
  51. $pSize = DllStructGetPtr($tSize)
  52. DllStructSetData($tSize, "X", _GDIPlus_ImageGetWidth($hImage))
  53. DllStructSetData($tSize, "Y", _GDIPlus_ImageGetHeight($hImage))
  54. $tSource = DllStructCreate($tagPOINT)
  55. $pSource = DllStructGetPtr($tSource)
  56. $tBlend = DllStructCreate($tagBLENDFUNCTION)
  57. $pBlend = DllStructGetPtr($tBlend)
  58. DllStructSetData($tBlend, "Alpha", $iOpacity)
  59. DllStructSetData($tBlend, "Format", 1)
  60. _WinAPI_UpdateLayeredWindow($hGUI, $hMemDC, 0, $pSize, $hMemDC, $pSource, 0, $pBlend, $ULW_ALPHA)
  61. _WinAPI_ReleaseDC(0, $hScrDC)
  62. _WinAPI_SelectObject($hMemDC, $hOld)
  63. _WinAPI_DeleteObject($hBitmap)
  64. _WinAPI_DeleteDC($hMemDC)
  65. EndFunc ;==>SetTransparentBitmap
  66.  

Obs: O serilhado ficou visível na letra "S, O" e no número "1"