(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)