1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
|
(tof)
MANUAL.euc
Sep. 19, 1997 Y. Shigehiro
�ʲ�, ��tcl/tk�פȤ���ɽ����, tclsh �� wish ��¸����Ƥ���, ���̤Ǥ���
�Ȥ����� tcl/tk ��ؤ��ޤ�. ��tcltk �饤�֥���, ��tcltklib �饤�֥�
��פȤ���ɽ����, �ܥѥå������˴ޤޤ�� ruby �ѤΥ饤�֥���ؤ��ޤ�.
<< tcltk �饤�֥�� >>
tcl/tk �� C �饤�֥������Ѥ��뤿��ι�(��?)��।���ե���������
�����ޤ�.
���Υ饤�֥��� ruby ���� tcl/tk �饤�֥������Ѥ��뤿��Τ�Τ�, ��
���� tcltklib �饤�֥������Ѥ��Ƥ��ޤ�.
[����]
tcl/tk ���ץ�Ǥ�, ���������åȤ˲����ؼ�������ˤ�, ����������
��̾��³���ƥѥ�����ޤ�. �������ä�, ���������åȤ����֥�����
�ȤǤ���, ������Ф��ƥ�åɤ����äƤ���, �Ȥߤʤ����Ȥ��Ǥ��ޤ�. ��
��, tcl/tk ���ץ�Ǥ�, �Ȥ߹��ߥ��ޥ�ɤ�, ���ҤΥ��������åȤ�
Ʊ���褦�ʽ�̿��Ǽ¹Ԥ���ޤ�. ���ʤ��, ���ޥ�ɤ⥪�֥������Ȥ�
����ȹͤ��뤳�Ȥ��Ǥ��ޤ�.
���Τ褦�ʹͤ��˴�Ť�, tcltk �饤�֥��Ǥ�, tcl/tk �Υ��ޥ�ɤ䥦��
�����åȤ��б����륪�֥������Ȥ��������ޤ�. ���֥������Ȥ��Ф�����
�ɸƤӽФ���, e() ��åɤˤ��¹Ԥ���ޤ�. �㤨��, tcl/tk �� info
���ޥ�ɤ��б����� ruby �Υ��֥������Ȥ� info �Ȥ���̾���Ǥ���Ȥ����,
tcl/tk ��
info commands
�Ȥ���̿��� tcltk �饤�֥��Ǥ�
info.e("commands")
�ȵ��Ҥ���ޤ�. �ޤ�, ��.�פȤ������������å� (wish �¹Ի��˼�ưŪ����
�������롼�ȥ��������å�) ���б����� ruby �Υ��֥������Ȥ� root �Ȥ�
��̾���Ǥ���Ȥ����,
. configure -height 300 -width 300
�Ȥ��� tcl/tk ��̿���
root.e("configure -height 300 -width 300")
�ȵ��Ҥ���ޤ�. ���Τ褦�ʵ��Ҥ�, ������ˤ�����������ޤ���, ������,
������ץȤ��ɤ�ͤˤϸ��Ť餤�����Τ�ޤ���, �ºݤ˥�����ץȤ��
�Ƥߤ��ͽ�۳��˼�ڤǤ�.
[����ˡ]
1. �饤�֥����ɤ߹���.
require "tcltk"
2. tcl/tk ���ץ����������.
ip = TclTkInterpreter.new()
3. tcl/tk �Υ��ޥ�ɤ��б����륪�֥������Ȥ��ѿ����������Ƥ���.
# ���ޥ�ɤ��б����륪�֥������Ȥ����ä� Hash ����Ф�.
c = ip.commands()
# �Ȥ��������ޥ�ɤ��б����륪�֥������Ȥ���̤��ѿ�����������.
bind, button, info, wm = c.indexes("bind", "button", "info", "wm")
4. ɬ�פʽ�����Ԥ�.
�ܤ�����, ����ץ�ȤΤ���.
5. �������Ǥ�����, ���٥�ȥ롼�פ�����.
TclTk.mainloop()
(( �ʲ�, �⥸�塼��, ���饹�����������ͽ��.))
<< tcltklib �饤�֥�� >>
tcl/tk �� C �饤�֥������Ѥ��뤿������।���ե�����������
��.
����ѥ���/�¹Ԥˤ�, tcl/tk �� C �饤�֥�꤬ɬ�פǤ�.
[����]
���Υ饤�֥����Ѥ����, ruby ���� tcl/tk �� C �饤�֥������ѤǤ���
��. ����Ū�ˤ�, ruby ���ץ���� tcl/tk ���ץ��ƤӽФ���
�Ȥ��Ǥ��ޤ�. �����, ����(ruby ���ץ����ƤӽФ���) tcl/tk ��
�ץ����, �դ� ruby ���ץ��ƤӽФ����Ȥ�Ǥ��ޤ�.
[����ˡ]
require "tcltklib" �����, �ʲ��Υ⥸�塼��, ���饹�����Ѳ�ǽ�Ǥ�.
�⥸�塼�� TclTkLib
tcl/tk �饤�֥���ƤӽФ���åɤ�⥸�塼��Ǥ�. ������,
tcl/tk ���ץ�ط��Υ�åɤϥ��饹 TclTkIp �ˤ���ޤ�.
�⥸�塼���å� mainloop()
Tk_MainLoop ��¹Ԥ��ޤ�. ���Ƥ� tk �Υ�����ɥ���̵���ʤ�Ƚ�λ
���ޤ�(�㤨��, tcl/tk �ǽȤ����� "destroy ." �������).
����: ̵��
�����: nil
���饹 TclTkIp
������ tcl/tk �Υ��ץ���б����ޤ�. tcl/tk �Υ饤��
���λ����̤�, ������ʣ�����������Ƥ�������ư��ޤ�(��
��ʤ��Ȥ�ɬ�פϤ��ޤ�̵���Ϥ��Ǥ���). ���ץ�� wish ��
tcl/tk ���ޥ�ɤ�¹ԤǤ��ޤ�. �����, �ʲ��Υ��ޥ�ɤ�¹ԤǤ���
��.
���ޥ�� ruby
������ ruby �Ǽ¹Ԥ��ޤ�(ruby_eval_string ��¹Ԥ��ޤ�). ����
�� 1 �ĤǤʤ���Фʤ�ޤ���. ����ͤ� ruby �μ¹Է�̤Ǥ�.
ruby �μ¹Է�̤� nil �� String �Ǥʤ���Фʤ�ޤ���.
���饹��å� new()
TclTkIp ���饹�Υ������������ޤ�
����: ̵��
����� (TclTkIp): �������줿������
��å� _eval(script)
���ץ�� script ��ɾ�����ޤ�(Tcl_Eval ��¹Ԥ��ޤ�). ����
�Τ褦��, ruby ���ޥ�ɤˤ�� script �⤫�� ruby ������ץȤ��
�ԤǤ��ޤ�.
����: script (String) - ���ץ��ɾ�����륹����ץ�ʸ����
����� (String): ɾ����� ((Tcl_Interp *)->result)
��å� _return_value()
ľ���� Tcl_Eval ������ͤ��֤��ޤ�. 0(TCL_OK) �����ェλ�Ǥ�.
����: ̵��
����� (Fixnum): ľ���� Tcl_Eval() ���֤�����.
(eof)
|