PureBasic - форум

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » PureBasic - форум » Вопросы по PureBasic » Управление консольным окном


Управление консольным окном

Сообщений 1 страница 3 из 3

1

Как сделать консольному окну HideWindow или хотябы MinimizeWindow?

0

2

Код:
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

0

3

Спасибо за идею. Применил такой вариант.

Код:
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

0


Вы здесь » PureBasic - форум » Вопросы по PureBasic » Управление консольным окном