zoukankan      html  css  js  c++  java
  • Toplevel

    option add *MessageInfo.title "Notice" widgetDefault

    class MessageInfo {
        inherit itk::Toplevel

        constructor {args} {
            itk_component add dismiss {
                button $itk_interior.dismiss -text "Dismiss" -command "destroy $itk_component(hull)"
            }
            pack $itk_component(dismiss) -side bottom -pady 4

            itk_component add separator {
                frame $itk_interior.sep -height 2 -borderwidth 1 -relief sunken
            }
            pack $itk_component(separator) -side bottom -fill x -padx 4

            itk_component add icon {
                label $itk_interior.icon -bitmap info
            }
            pack $itk_component(icon) -side left -padx 8 -pady 8

            itk_component add infoFrame {
                frame $itk_interior.info
            }
            pack $itk_component(infoFrame) -side left -expand yes \
                -fill both -padx 4 -pady 4

            itk_component add message {
                label $itk_interior.mesg -width 20
            } {
                usual
                rename -text -message message Text
            }
            pack $itk_component(message) -expand yes -fill both

            eval itk_initialize $args

            after idle [code $this centerOnScreen]
        }

        protected method centerOnScreen {} {
            update idletasks
            set wd [winfo reqwidth $itk_component(hull)]
            set ht [winfo reqheight $itk_component(hull)]
            set x [expr ([winfo screenwidth $itk_component(hull)]-$wd)/2]
            set y [expr ([winfo screenheight $itk_component(hull)]-$ht)/2]
            wm geometry $itk_component(hull) +$x+$y
        }
    }

    usual MessageInfo {
        keep -background -cursor -foreground -font
        keep -activebackground -activeforeground -disabledforeground
        keep -highlightcolor -highlightthickness
    }

    #
    # EXAMPLE:  Create a notice window:
    #
    MessageInfo .m -message "File not found:n/usr/local/bin/foo"

  • 相关阅读:
    如何随机生成指定数目的国标汉字?
    动态裁剪窗体标题栏
    N皇后问题
    谈谈五皇后问题
    一道趣味数学题
    In version 2.0, DB Query Analyzer will never be mistaken as virus by antivirus software
    从2.0版本开始,“万能数据库查询分析器”的中英文版本不再被误报成病毒
    Android_获取屏幕大小的两种方法
    广东电信公话201亲情月卡用户重复购买率模型的研究
    基于关系数据库的数据仓库星形模式下维使用原则的研究与探索
  • 原文地址:https://www.cnblogs.com/greencolor/p/2078791.html
Copyright © 2011-2022 走看看