872777825 发表于 2011-7-31 16:05:39

运行au3程序时如何全屏化调用一张图片

小弟想要实现个功能
就时运行au3的脚本程序时
同时打开一张背景图片
将桌面上所有东西都屏蔽掉....
不知道怎么写
   望老师们能指点一二谢谢了

powerofos 发表于 2011-7-31 16:15:07

你要不要屏蔽掉任务栏,
图片的格式,是确定的格式还是未知格式,
“运行au3的脚本程序时,同时打开一张背景图片”,是不是指还有另外的GUI

872777825 发表于 2011-7-31 16:23:39

回复 2# powerofos


    不用屏蔽任务栏
就启动的时候在桌面上有张背景图当然都在桌面常规图片之上

还有图片的上面还要可以出现GUI

powerofos 发表于 2011-7-31 16:57:44

_WinAPI_GetWorkArea()取任务栏外区域,$WS_POPUP样式作底层窗口,PIC控件,若PNG需用GDI。

顶层窗口,选择由你

872777825 发表于 2011-7-31 17:33:06

回复 4# powerofos


    恩谢谢。。。我先试试

sunafter 发表于 2011-8-1 07:42:56

$igui = GUICreate("", @DesktopWidth, @DesktopHeight,-1,-1,$WS_POPUP)
$img=GUICtrlCreatePic( "logo.jpg",0,0,@DesktopWidth,@DesktopHeight)

GUISetState(@SW_SHOW)

happytc 发表于 2011-8-1 08:46:41


#Include <ScreenCapture.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

_GDIPlus_Startup()
$HBITMAP = _ScreenCapture_Capture("", 0, 0, @DesktopWidth - 2, @DesktopHeight - 2, 0)       
$hGUI = GUICreate("Full Screen", @DesktopWidth, @DesktopHeight, 0, 0, $WS_POPUP)
GUISetState(@SW_SHOW, $hGUI)

$hGraphicBg = _GDIPlus_GraphicsCreateFromHWND($hGUI)
$hBmp = _GDIPlus_BitmapCreateFromHBITMAP($HBITMAP)
$hBmpBak = _GDIPlus_BitmapCreateFromHBITMAP($HBITMAP)
_GDIPlus_GraphicsDrawImage($hGraphicBg, $hBmp, 0, 0)       
$hGraphicBgVirtual = _GDIPlus_ImageGetGraphicsContext($hBmp)       
_WinAPI_DeleteObject($HBITMAP)


While True
        If GUIGetMsg() == $GUI_EVENT_CLOSE Then ExitLoop
WEnd

_GDIPlus_GraphicsDispose($hGraphicBg)
_GDIPlus_GraphicsDispose($hGraphicBgVirtual)
_GDIPlus_Shutdown()
GUIDelete($hGUI)
页: [1]
查看完整版本: 运行au3程序时如何全屏化调用一张图片