zoukankan      html  css  js  c++  java
  • tcl/tk窗口管理器

    窗口尺寸:

    设置窗口的宽高:

    wm geometry .window 300x200

    恢复窗口到其自然尺寸:

    wm geometry .window {}

    设置窗口最大最小尺寸

    wm minsize .window 100 50

    wm maxsize .window 400 150

    宽度范围100~400像素,高度范围50~150像素

     

    设置窗口是否尺寸可调:

    wm resizable .window 0 1

    0 :尺寸不可调   1:尺寸可调

     

    限制宽高比范围:

    wm aspect .window 1 3 4 1

    告诉窗口管理器不允许用户将窗口的宽高比设置为小于1/3或大于4。

     

    窗口位置:

    设置窗口相对显示器的位置:

    wm geometry .window 100x200+300+400

    设置宽高为100x200,窗口左上角相对为显示器上坐标为(300,400)的店。如果两个‘+’的任何一个改成‘-’,则相对显示器的右下角开始。

     

    窗口状态:

    命令wm withdraw .window将一个窗口至于关闭状态。如果在窗口显示在屏幕上之前调用了该命令,窗口便会从关闭状态开始。这条命令最常见的用途是组织一个用程序的主窗口显示在屏幕上(在一些应用程序中中,主窗口没有任何作用,用户界面是由顶层窗口给出的)。一旦窗口退出,他可以用wm deiconify 或wm iconify返回屏幕。

    图标化窗口:

    wm iconify .window

    查询窗口的状态;

    wm state .window

    =>iconic

     

    装饰:

    设置窗口标题:

    wm title .window "you window title"

     

    设置窗口图标:

    wm iconbitmap . -defualt $iconpath
    设定所有的窗口图标都为 $iconpath所指定的图标。


    wm iconbitmap . $iconpath
    只设定当前窗口图标为 $iconpath所指定的图标。

    一般 $iconpath 只支持.ico格式的图像。

     

    针对系统的窗口属性:

    wm attributes window ?attribute? ?value attribute value ...?

     

    设置窗口最大化:

    -fullscreen boolean

    例如:

    wm attributes .window -fullscreen true

    wm attributes .window -fullscreen false

    设置窗口总是在最前端:

    -topmost boolean

    控制窗口的透明度:

    -alpha number

    其中alpha范围为0.0(透明)到1.0(不透明)

    设置为无效状态:

    -disabled boolean

    设置工具窗口样式:

    -toolwindow boolean

    指定透明色:

    -transparentcolor -color

    如果指定为空字符串(默认),则不使用任何透明色。

     

    关闭窗口:

    destroy .window

    或者在用户按下框架上的关闭按钮时,由窗口管理器来关闭。可以用wm protocol截获关闭命令。相当于产生一个窗口关闭事件,由wm protocol截获进行处理。

    例如:

    wm protocol .window WM_DELETE_WINDOW {

        set response [tk_messageBox -type yesno -message "Really quit?"]

        if {$response eq "yes"} {

            destroy .window

        }

    }

    上述代码在窗口管理器关闭窗口时调用,弹出确认窗口,如下


    如果点击“是”,命令返回字符串“yes”(否则返回“no”),则关闭窗口。

    注意,destroy .window 命令直接关闭窗口,不会传递给窗口管理器处理,因此不会重复触发上述命令。

  • 相关阅读:
    Linux 小知识点
    Nginx 源码安装
    MySQL user表详解
    Python 资源
    Python 迭代dict的value
    著作权和专利权的区别
    软件设计师05-信息安全基础知识
    记录一次服务器突然宕机的排查
    支付宝微信拉取账单到本地
    软件设计师04-计算机网络
  • 原文地址:https://www.cnblogs.com/kane1990/p/2293979.html
Copyright © 2011-2022 走看看