建了一個 GUI 強制嵌入 第三方ERP軟件....但是嵌入後 放到最大 第三方軟件 原本的狀態欄會不見.....
圖片一 表示 原本ERP 的狀態欄 不見了....
圖片二 表示 希望控制的範圍跟樣子
求助.....如何計算 GUI 剩餘顯示空間的 範圍......如 圖三
以及 如呵控制 第三方軟件的窗口大小跟 DISABLE 其最大化和最小化的功能......
#include <GuiConstants.au3>
#Include <GuiListView.au3>
#include <WindowsConstants.au3>
#include <EditConstants.au3>
#include <WinAPI.au3>
#include <WinAPIEx.au3>
#include <GuiImageList.au3>
#include <GUIConstantsEx.au3>
#include <GuiButton.au3>
#include <ButtonConstants.au3>
Run ("C:\T357\T357.EXE","C:\T357")
WinWait("","主菜單")
Sleep(500)
$WinMain = GuiCreate('外掛測試',900,700,-1,-1,$WS_CLIPCHILDREN+$WS_MAXIMIZE+$WS_OVERLAPPEDWINDOW)
$filemenu = GUICtrlCreateMenu("文件 &F")
$fileitem = GUICtrlCreateMenuItem ("打開", $filemenu)
GUICtrlSetState(-1, $GUI_DEFBUTTON)
$helpmenu = GUICtrlCreateMenu("?")
GUICtrlCreateMenuItem ("保存", $filemenu)
GUICtrlSetState(-1, $GUI_DISABLE)
$infoitem = GUICtrlCreateMenuItem ("信息", $helpmenu)
$exititem = GUICtrlCreateMenuItem ("退出", $filemenu)
$recentfilesmenu = GUICtrlCreateMenu("最近的檔", $filemenu, 1)
GUICtrlCreateMenuItem ("", $filemenu, 2) ; 創建一個分隔線
$viewmenu = GUICtrlCreateMenu("查看", -1, 1) ; 之前創建的"?"菜單
$viewstatusitem = GUICtrlCreateMenuItem ("狀態欄", $viewmenu)
GUICtrlSetState(-1, $GUI_CHECKED)
$ProcessID = ProcessWait("IT357.EXE")
$TLIST=_WinAPI_EnumProcessWindows($ProcessID,1)
FOR $i=1 To $TLIST[0][0]
IF $TLIST[$i][1]="TfrmK357Main" THEN $WINhWnd=$TLIST[$i][0]
Next
_WinAPI_SetParent($WINhWnd, $WinMain)
WinSetState($WINhWnd, "", @SW_MAXIMIZE)
GuiSetState()
While 1
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
_WinAPI_SetParent($WINhWnd, 0)
Exit
EndSwitch
WEnd
圖片一
圖片二
圖片三
|