Как сделать консольному окну HideWindow или хотябы MinimizeWindow?
Управление консольным окном
Страница: 1
Сообщений 1 страница 3 из 3
Поделиться215.05.2014 10:52:22
Код:
Import "Kernel32.lib"
GetConsoleWindow()
EndImport
Procedure SetForegroundWindow(hWnd)
If GetWindowLong_(hWnd, #GWL_STYLE) & #WS_MINIMIZE
ShowWindow_(hWnd, #SW_MAXIMIZE)
UpdateWindow_(hWnd)
EndIf
foregroundThreadID = GetWindowThreadProcessId_(GetForegroundWindow_(), 0)
ourThreadID = GetCurrentThreadId_()
If (foregroundThreadID <> ourThreadID)
AttachThreadInput_(foregroundThreadID, ourThreadID, #True);
EndIf
SetForegroundWindow_(hWnd)
If (foregroundThreadID <> ourThreadID)
AttachThreadInput_(foregroundThreadID, ourThreadID, #False)
EndIf
InvalidateRect_(hWnd, #Null, #True)
EndProcedure
OpenConsole()
hWnd = GetConsoleWindow()
If hWnd
For i=1 To 4
If i&1
Flags=#SW_SHOWNORMAL|#SW_RESTORE
SetForegroundWindow(hWnd)
Debug 2
Else
Flags=#SW_HIDE
EndIf
ShowWindow_(hWnd, Flags)
Delay(1000)
Next i
EndIfПоделиться316.05.2014 04:54:53
Спасибо за идею. Применил такой вариант.
Код:
Import "Kernel32.lib"
GetConsoleWindow()
EndImport
.......
.......
hConsol=GetConsoleWindow()
If hConsol
ShowWindow_(hConsol,#SW_HIDE) ;скрыть окно
;ShowWindow_(hConsol,#SW_MINIMIZE) ;минимизировать окно
EndIf
........
........
........
;--- end ------------------
If hConsol ;and glDebug
;ShowWindow_(hConsol,#SW_RESTORE)
ShowWindow_(hConsol,#SW_SHOW) ;показать окно
SetForegroundWindow_(hConsol) ;активировать ввод в окно
Print("Press Enter >")
Input()
EndIfСтраница: 1