我有一个tcl wish shell作为Tcl解释器,我执行console hide
命令。因此控制台变得不可见,但是任务管理器中存在进程。
他们是否可以再次获得控制台。我们有console show
但在哪里运行它?
答案 0 :(得分:3)
你有可以与之互动的Tk gui吗?如果是这样,一个选项是绑定一个键,以便在你的gui中按下它时打开控制台。例如。如果顶层gui窗口是“。”然后选择键F2,将以下内容添加到您的Tk代码中:
bind . <F2> {console show}
答案 1 :(得分:1)
可能有点沉重的方法,但如果你有TWAPI包和过程的PID,这是有效的:
% package require twapi
4.1.27
现在让我们获取PID的窗口句柄:
% set w [twapi::get_toplevel_windows -pid 2432]
{197612 HWND} {132106 HWND} {590378 HWND} {132100 HWND} {327716 HWND} {132098 HWND} {132094 HWND} {393624 HWND}
其中一个窗口应该是隐藏的控制台:
% foreach win $w {
> puts "[twapi::get_window_text $win] Handle: $win"
> }
Konsole Handle: 197612 HWND
TclNotifier Handle: 132106 HWND
wish Handle: 590378 HWND
E Handle: 132100 HWND
M Handle: 327716 HWND
TtkMonitorWindow Handle: 132098 HWND
MSCTFIME UI Handle: 132094 HWND
Default IME Handle: 393624 HWND
这是一个德语窗口,所以对我来说Konsole
是正确的,让我们再次展示它:
% twapi::show_window {197612 HWND}
1
现在控制台又回来了,你可以使用它。