Archive for the ‘Tcl/Tk’ Category

  1. Hello, Tkinter World!

    Posted on 5月 15th, 2013 by cx20

    Tkinter

    Tkinter は Tcl スクリプト用の GUI ツールキット「Tk」を Python から呼出し可能にしたライブラリである。
    以下は Python による Tkinter の呼出し例となっている。

    ソースコード

    from Tkinter import *
     
    window = Tk()
    window.title( 'Hello, World!' )
    window.geometry( '640x480' )
     
    label = Label( text = "Hello, Tkinter World!" )
    label.pack( side = 'top', anchor = 'w' )
     
    window.mainloop()

    実行方法

    C:¥> python hello.py

    実行結果

    +------------------------------------------+
    |Hello, World!                    [_][~][X]|
    +------------------------------------------+
    |Hello, Tkinter World!                     |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    +------------------------------------------+
  2. Hello, Ruby/Tk World!

    Posted on 5月 14th, 2013 by cx20

    Ruby/Tk

    Ruby/Tk は Tcl スクリプト用の GUI ツールキット「Tk」を Ruby から呼出し可能にしたライブラリである。
    以下は Ruby による Ruby/Tk の呼出し例となっている。

    ソースコード

    require 'tk'
     
    window = TkRoot.new
    window.title 'Hello, World!'
    window.geometry '640x480'
    label = TkLabel.new
    label.text 'Hello, Ruby/Tk World!'
    label.pack( 'side' => 'top', 'anchor' => 'w' )
     
    Tk.mainloop

    実行方法

    C:¥> ruby hello.rb

    実行結果

    +------------------------------------------+
    |Hello, World!                    [_][~][X]|
    +------------------------------------------+
    |Hello, Ruby/Tk World!                     |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    +------------------------------------------+
  3. Hello, Perl/Tk World!

    Posted on 5月 13th, 2013 by cx20

    Perl/Tk

    Perl/Tk は Tcl スクリプト用の GUI ツールキット「Tk」を Perl から呼出し可能にしたライブラリである。
    以下は Perl による Perl/Tk の呼出し例となっている。

    ソースコード

    use Tk;
     
    $window = MainWindow->new();
    $window->title( 'Hello, World!' );
    $window->geometry( '640x480' );
     
    $label = $window->Label( -text => "Hello, Perl/Tk World!" );
    $label->pack( -side => 'top', -anchor => 'w' );
     
    MainLoop();

    実行方法

    C:¥> pl hello.pl

    実行結果

    +------------------------------------------+
    |Hello, World!                    [_][~][X]|
    +------------------------------------------+
    |Hello, Perl/Tk World!                     |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    +------------------------------------------+
  4. Hello, Tcl/Tk(C言語) World!

    Posted on 5月 12th, 2013 by cx20

    Tcl/Tk(C言語)

    Tcl はシンプルな構文を持つスクリプト言語である。名前は「ツールコマンド言語(Tool Command Language)」に由来する。
    Tcl スクリプト用の GUI ツールキットとして Tk が開発され、バンドルされたものを Tcl/Tk と呼ぶ。Tk の人気は高く、Tcl/Tk 以外に Perl/Tk、Ruby/Tk と言った他の言語にも移植されている。
    以下は C言語 による Tcl/Tk の呼出し例となっている。

    ソースコード

    #include <tcl.h>
    #include <tk.h>
     
    int main( int argc, char* argv[] )
    {
        Tcl_Interp* interp;
        char command[] = 
            "wm title . \"Hello, World!\"\n"
            "wm geometry . \"640x480\"\n"
            "label .label -text \"Hello, Tcl/Tk World!\"\n"
            "pack .label -side top -anchor w";
        interp = Tcl_CreateInterp();
        Tcl_Init(interp);
        Tk_Init(interp);
        Tcl_Eval( interp, command );
        Tk_MainLoop();
        return 0;
    }

    コンパイル方法(Visual C++)

    C:¥> cl hello.c /link tcl85.lib tk85.lib

    実行結果

    +------------------------------------------+
    |Hello, World!                    [_][~][X]|
    +------------------------------------------+
    |Hello, Tcl/Tk World!                      |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    +------------------------------------------+
  5. Hello, Tcl/Tk World!

    Posted on 5月 11th, 2013 by cx20

    Tcl/Tk

    Tcl はシンプルな構文を持つスクリプト言語である。名前は「ツールコマンド言語(Tool Command Language)」に由来する。
    Tcl スクリプト用の GUI ツールキットとして Tk が開発され、バンドルされたものを Tcl/Tk と呼ぶ。Tk の人気は高く、Tcl/Tk 以外に Perl/Tk、Ruby/Tk と言った他の言語にも移植されている。

    ソースコード

    wm title . "Hello, World!"
    wm geometry . "640x480"
    label .label -text "Hello, Tcl/Tk World!" 
    pack .label -side top -anchor w

    実行方法

    $ wish ./hello.tcl

    実行結果

    +------------------------------------------+
    |Hello, World!                    [_][~][X]|
    +------------------------------------------+
    |Hello, Tcl/Tk World!                      |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    +------------------------------------------+