menu
特殊选项tearoff
:
Tkx::option_add("*tearOff", 1); //菜单多出一条虚线,且可以独立出来
Tkx::option_add("*tearOff", 0);//关闭tearoff功能
关于frame
带frame关键字的都可以理解为框架,一个用来放置组件的方框。同时frame还是widget的子类。
## frame的使用
my $mw = Tkx::widget->new(".");
my $frm = $mw->new_frame();
my $bt_1 = $frm->new_button(-text => "bt1");
$bt_1->g_pack();
$frm->g_pack();
关于toplevel
toplevel是一个顶级窗口,作为一个新窗口弹出。
## 主窗口是一个顶级窗口
my $mw = Tkx::widget->new(".");
## 使用toplevel创建顶级窗口
## 方法一,当没有主窗口时想要创建顶级窗口,通常在.pm文件中才这样创建一个独立的顶级窗口,
## 当.pm被主窗口加载时,该顶级窗口作为顶级窗口给出
my $t = Tkx::toplevel(".top"); ## 创建一个'.top'的顶级窗口
my $mwf = Tkx::widget->new("$t"); ## 为顶级窗口创建一个widget --> 这里希望有明白的同学帮忙解释一下,此处是我的理解
#$mwf......
## 方法二,当在同一个文件中既有主窗口,又要创建其他顶级窗口时,可以直接用主窗口创建
my $mw = Tkx::widget->new(".");
my $top = $mw->new_toplevel;
#########
#方法一可以在toplevel后带参数作为窗口名
#方法二不可以,会报错,应该是Tkx的封装问题,
窗口选项
-sticky ## left, center, right 用来指定文字或内容行的对齐方式
Digest::MD5
MD5
use Digest::MD5 qw(md5 md5_hex md5_base64);
my $string = "abc";
my $md5_string = md5_hex($string); ## md5 md5_base64
## md5返回二进制格式的字符串,16字节长
## md5_hex返回16进制格式的字符串,32位长度
## md5_base64返回base64 encoded字符串,22位长度