# # text (display styles) widget demo (called by 'widget') # # toplevel widget ¤¬Â¸ºß¤¹¤ì¤Ðºï½ü¤¹¤ë if defined?($style_demo) && $style_demo $style_demo.destroy $style_demo = nil end # demo ÍѤΠtoplevel widget ¤òÀ¸À® $style_demo = TkToplevel.new {|w| title("Text Demonstration - Display Styles") iconname("style") positionWindow(w) } # frame À¸À® TkFrame.new($style_demo) {|frame| TkButton.new(frame) { #text 'λ²ò' text 'ÊĤ¸¤ë' command proc{ tmppath = $style_demo $style_demo = nil tmppath.destroy } }.pack('side'=>'left', 'expand'=>'yes') TkButton.new(frame) { text '¥³¡¼¥É»²¾È' command proc{showCode 'style'} }.pack('side'=>'left', 'expand'=>'yes') }.pack('side'=>'bottom', 'fill'=>'x', 'pady'=>'2m') # text À¸À® TkText.new($style_demo){|t| # À¸À® setgrid 'true' width 70 height 32 wrap 'word' TkScrollbar.new($style_demo) {|s| pack('side'=>'right', 'fill'=>'y') command proc{|*args| t.yview(*args)} t.yscrollcommand proc{|first,last| s.set first,last} } pack('expand'=>'yes', 'fill'=>'both') # ¥Æ¥¥¹¥È¥¿¥°ÀßÄê (¥Õ¥©¥ó¥È´ØÏ¢) style_tag_bold = TkTextTag.new(t, 'font'=>'-*-Courier-Bold-O-Normal--*-120-*-*-*-*-*-*') style_tag_big = TkTextTag.new(t, 'font'=>'-*-Courier-Bold-R-Normal--*-140-*-*-*-*-*-*', 'kanjifont'=>$msg_kanji_font) style_tag_verybig = TkTextTag.new(t, 'font'=>'-*-Helvetica-Bold-R-Normal--*-240-*-*-*-*-*-*') # style_tag_small = TkTextTag.new(t, 'font'=>'-Adobe-Helvetica-Bold-R-Normal-*-100-*', 'kanjifont'=>$kanji_font) style_tag_small = TkTextTag.new(t, 'font'=>'-Adobe-Helvetica-Bold-R-Normal-*-100-*') ### # case($tk_version) # when /^4.*/ # style_tag_big = TkTextTag.new(t, 'font'=>'-*-Courier-Bold-R-Normal--*-140-*-*-*-*-*-*', 'kanjifont'=>$msg_kanji_font) # style_tag_small = TkTextTag.new(t, 'font'=>'-Adobe-Helvetica-Bold-R-Normal-*-100-*', 'kanjifont'=>$kanji_font) # when /^8.*/ # unless $style_demo_do_first # $style_demo_do_first = true # Tk.tk_call('font', 'create', '@bigascii', # '-copy', '-*-Courier-Bold-R-Normal--*-140-*-*-*-*-*-*') # Tk.tk_call('font', 'create', '@smallascii', # '-copy', '-Adobe-Helvetica-Bold-R-Normal-*-100-*') # Tk.tk_call('font', 'create', '@cBigFont', # '-compound', '@bigascii @msg_knj') # Tk.tk_call('font', 'create', '@cSmallFont', # '-compound', '@smallascii @kanji') # end # style_tag_big = TkTextTag.new(t, 'font'=>'@cBigFont') # style_tag_small = TkTextTag.new(t, 'font'=>'@cSmallFont') # end # ¥Æ¥¥¹¥È¥¿¥°ÀßÄê (¿§¡¤¥ì¥ê¡¼¥Õ´ØÏ¢) if TkWinfo.depth($root).to_i > 1 style_tag_color1 = TkTextTag.new(t, 'background'=>'#a0b7ce') style_tag_color2 = TkTextTag.new(t, 'foreground'=>'red') style_tag_raised = TkTextTag.new(t, 'relief'=>'raised', 'borderwidth'=>1) style_tag_sunken = TkTextTag.new(t, 'relief'=>'sunken', 'borderwidth'=>1) else style_tag_color1 = TkTextTag.new(t, 'background'=>'black', 'foreground'=>'white') style_tag_color2 = TkTextTag.new(t, 'background'=>'black', 'foreground'=>'white') style_tag_raised = TkTextTag.new(t, 'background'=>'white', 'relief'=>'raised', 'borderwidth'=>1) style_tag_sunken = TkTextTag.new(t, 'background'=>'white', 'relief'=>'sunken', 'borderwidth'=>1) end # ¥Æ¥¥¹¥È¥¿¥°ÀßÄê (¤½¤Î¾) if $tk_version =~ /^4\.[01]/ style_tag_bgstipple = TkTextTag.new(t, 'background'=>'black', 'borderwidth'=>0, 'bgstipple'=>'gray25') else style_tag_bgstipple = TkTextTag.new(t, 'background'=>'black', 'borderwidth'=>0, 'bgstipple'=>'gray12') end style_tag_fgstipple = TkTextTag.new(t, 'fgstipple'=>'gray50') style_tag_underline = TkTextTag.new(t, 'underline'=>'on') style_tag_overstrike = TkTextTag.new(t, 'overstrike'=>'on') style_tag_right = TkTextTag.new(t, 'justify'=>'right') style_tag_center = TkTextTag.new(t, 'justify'=>'center') style_tag_super = TkTextTag.new(t, 'offset'=>'4p', 'font'=>'-Adobe-Courier-Medium-R-Normal--*-100-*-*-*-*-*-*') style_tag_sub = TkTextTag.new(t, 'offset'=>'-2p', 'font'=>'-Adobe-Courier-Medium-R-Normal--*-100-*-*-*-*-*-*') style_tag_margins = TkTextTag.new(t, 'lmargin1'=>'12m', 'lmargin2'=>'6m', 'rmargin'=>'10m') style_tag_spacing = TkTextTag.new(t, 'spacing1'=>'10p', 'spacing2'=>'2p', 'lmargin1'=>'12m', 'lmargin2'=>'6m', 'rmargin'=>'10m') # ¥Æ¥¥¹¥ÈÁÞÆþ insert('end', '¤³¤Î¤è¤¦¤Ë¥Æ¥¥¹¥È widget ¤Ï¾ðÊó¤òÍÍ¡¹¤Ê¥¹¥¿¥¤¥ë¤Çɽ¼¨¤¹¤ë¤³¤È ¤¬¤Ç¤¤Þ¤¹¡£') insert('end', '¥¿¥°', style_tag_big) insert('end', '¤È¤¤¤¦¥á¥«¥Ë¥º¥à¤Ç¥³¥ó¥È¥í¡¼¥ë¤µ¤ì¤Þ¤¹¡£ ¥¿¥°¤È¤Ï¥Æ¥¥¹¥È widget Æâ¤Î¤¢¤ëʸ»ú (¤ÎÈÏ°Ï)¤ËÂФ·¤ÆŬÍѤǤ¤ë ñ¤Ê¤ë̾Á°¤Î¤³¤È¤Ç¤¹¡£¥¿¥°¤ÏÍÍ¡¹¤Êɽ¼¨¥¹¥¿¥¤¥ë¤ËÀßÄê¤Ç¤¤Þ¤¹¡£ ÀßÄꤹ¤ë¤È¡¢¤½¤Î¥¿¥°¤Î¤Ä¤¤¤¿Ê¸»ú¤Ï»ØÄꤷ¤¿¥¹¥¿¥¤¥ë¤Çɽ¼¨¤µ¤ì¤ë ¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£»ÈÍѤǤ¤ëɽ¼¨¥¹¥¿¥¤¥ë¤Ï¼¡¤ÎÄ̤ê¤Ç¤¹¡£ ') insert('end', ' 1. ¥Õ¥©¥ó¥È', style_tag_big) insert('end', ' ¤É¤ó¤Ê X ¤Î¥Õ¥©¥ó¥È¤Ç¤â»È¤¨¤Þ¤¹¡£') insert('end', 'large', style_tag_verybig) insert('end', ' ¤È¤«') # insert('end', '¾®¤µ¤¤', style_tag_small) insert('end', 'small', style_tag_small) insert('end', '¤È¤«¡£ ') insert('end', ' 2. ¿§', style_tag_big) insert('end', ' ') insert('end', 'ÇØ·Ê¿§', style_tag_color1) insert('end', '¤â') insert('end', 'Á°·Ê¿§', style_tag_color2) insert('end', '¤â') insert('end', 'ξÊý', style_tag_color1, style_tag_color2) insert('end', '¤È¤âÊѤ¨¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£ ') insert('end', ' 3. ÌÖ¤«¤±', style_tag_big) insert('end', ' ¤³¤Î¤è¤¦¤ËÉÁ²è¤ÎºÝ¤Ë') insert('end', 'Çطʤâ', style_tag_bgstipple) insert('end', 'ʸ»ú¤â', style_tag_fgstipple) insert('end', 'ñ¤Ê¤ëÅɤê¤Ä¤Ö¤· ¤Ç¤Ê¤¯¡¢ÌÖ¤«¤±¤ò»È¤¦¤³¤È¤¬¤Ç¤¤Þ¤¹¡£ ') insert('end', ' 4. ²¼Àþ', style_tag_big) insert('end', ' ¤³¤Î¤è¤¦¤Ë') insert('end', 'ʸ»ú¤Ë²¼Àþ¤ò°ú¤¯', style_tag_underline) insert('end', '¤³¤È¤¬¤Ç¤¤Þ¤¹¡£ ') insert('end', ' 5. ÂǤÁ¾Ã¤·Àþ', style_tag_big) insert('end', ' ¤³¤Î¤è¤¦¤Ë') insert('end', 'ʸ»ú¤Ë½Å¤Í¤ÆÀþ¤ò°ú¤¯', style_tag_overstrike) insert('end', '¤³¤È¤¬¤Ç¤¤Þ¤¹¡£ ') insert('end', ' 6. 3D ¸ú²Ì', style_tag_big) insert('end', ' ÇطʤËÏȤò¤Ä¤±¤Æ¡¢Ê¸»ú¤ò') insert('end', 'Èô¤Ó½Ð¤¹', style_tag_raised) insert('end', '¤è¤¦¤Ë¤·¤¿¤ê') insert('end', 'ÄÀ¤à', style_tag_sunken) insert('end', ' ¤è¤¦¤Ë¤Ç¤¤Þ¤¹¡£ ') insert('end', ' 7. ¹Ô·¤¨', style_tag_big) insert('end', ' ¤³¤Î¤è¤¦¤Ë¹Ô¤ò ') insert('end', 'º¸¤Ë·¤¨¤¿¤ê ') insert('end', '±¦¤Ë·¤¨¤¿¤ê ', style_tag_right) insert('end', '¿¿Ãæ¤Ë·¤¨¤¿¤ê¤Ç¤¤Þ¤¹¡£ ', style_tag_center) insert('end', ' 8. ¸ªÉդʸ»ú¤Èź»ú', style_tag_big) insert('end', ' 10') insert('end', 'n', style_tag_super) insert('end', ' ¤Î¤è¤¦¤Ë¸ªÉդʸ»ú¤Î¸ú²Ì¤ä¡¢') insert('end', ' X') insert('end', 'i', style_tag_sub) insert('end', '¤Î¤è¤¦¤Ëź»ú¤Î¸ú²Ì¤ò½Ð¤¹¤³¤È¤¬¤Ç¤¤Þ¤¹¡£ ') insert('end', ' 9. ¥Þ¡¼¥¸¥ó', style_tag_big) insert('end', '¥Æ¥¥¹¥È¤Îº¸Â¦¤Ë;ʬ¤Ê¶õÇò¤òÃÖ¤¯¤³¤È¤¬¤Ç¤¤Þ¤¹: ') insert('end', '¤³¤ÎÃÊÍî¤Ï¥Þ¡¼¥¸¥ó¤Î»ÈÍÑÎã¤Ç¤¹¡£¥¹¥¯¥ê¡¼¥ó', style_tag_margins) insert('end', '¾å¤ÇÀÞ¤êÊÖ¤µ¤ì¤Æɽ¼¨¤µ¤ì¤Æ¤¤¤ë1¹Ô¤Î¥Æ¥¥¹¥È¤Ç¤¹¡£', style_tag_margins) insert('end', 'º¸Â¦¤Ë¤Ï2¼ïÎà¤Î¥Þ¡¼¥¸¥ó¤ò»ý¤Á¤Þ¤¹¡£', style_tag_margins) insert('end', '1¹ÔÌܤËÂФ¹¤ë¤â¤Î¤È¡¢', style_tag_margins) insert('end', '2¹ÔÌܰʹߤÎϢ³¤·¤¿¥Þ¡¼¥¸¥ó', style_tag_margins) insert('end', '¤Ç¤¹¡£¤Þ¤¿±¦Â¦¤Ë¤â¥Þ¡¼¥¸¥ó¤¬¤¢¤ê¤Þ¤¹¡£', style_tag_margins) insert('end', '¹Ô¤ÎÀÞ¤êÊÖ¤·°ÌÃÖ¤ò·è¤á¤ë¤¿¤á¤Ë»ÈÍѤ¹¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£ ', style_tag_margins) insert('end', ' 10. ¥¹¥Ú¡¼¥·¥ó¥°', style_tag_big) insert('end', '3¤Ä¤Î¥Ñ¥é¥á¡¼¥¿¤Ç¹Ô¤Î¥¹¥Ú¡¼¥·¥ó¥°¤ò') insert('end', 'À©¸æ¤¹ ¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£Spacing1¤Ç¡¢¹Ô¤Î') insert('end', '¾å¤Ë¤É¤Î¤¯¤é¤¤¤Î¶õ´Ö¤òÃÖ¤¯¤«¡¢ spacing3') insert('end', '¤Ç¹Ô¤Î²¼¤Ë¤É¤Î¤¯¤é¤¤¤Î¶õ´Ö¤òÃÖ¤¯¤«¡¢') insert('end', '¹Ô¤¬ÀÞ¤êÊÖ¤µ¤ì¤Æ¤¤¤ë¤Ê¤é ¤Ð¡¢spacing2¤Ç¡¢') insert('end', '¥Æ¥¥¹¥È¹Ô¤òÀ¸À®¤·¤Æ¤¤¤ë¹Ô¤Î´Ö¤Ë¤É¤Î¤¯¤é¤¤') insert('end', '¤Î¶õ´Ö¤òÃÖ ¤¯¤«¤ò¼¨¤·¤Þ¤¹¡£ ') insert('end', '¤³¤ì¤é¤Î¥¤¥ó¥Ç¥ó¥È¤µ¤ì¤¿ÃÊÍî¤Ï¤É¤Î¤è¤¦¤Ë', style_tag_spacing) insert('end', '¥¹¥Ú¡¼¥·¥ó¥°¤¬¤¬¹Ô¤ï¤ì¤ë¤Î¤«¤ò¼¨¤·¤Þ¤¹¡£', style_tag_spacing) insert('end', '³ÆÃÊÍî¤Ï¼ÂºÝ¤Ï¥Æ¥¥¹¥Èwidget', style_tag_spacing) insert('end', '¤Î1¹Ô¤Ç¡¢widget¤Ë¤è¤Ã¤ÆÀÞ¤ê¾ö¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£ ', style_tag_spacing) insert('end', 'Spacing1¤Ï¤³¤Î¥Æ¥¥¹¥È¤Ç¤Ï10point¤Ë', style_tag_spacing) insert('end', 'ÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£', style_tag_spacing) insert('end', '¤³¤ì¤Ë¤è¤ê¡¢ÃÊÍî¤Î´Ö¤ËÂ礤ʴֳ֤¬', style_tag_spacing) insert('end', '¸ºß¤·¤Æ¤¤¤Þ¤¹¡£', style_tag_spacing) insert('end', 'Spacing2¤Ï2point¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£', style_tag_spacing) insert('end', '¤³¤ì¤ÇÃÊÍî¤ÎÃæ¤Ë¤Û¤ó¤Î¾¯¤·´Ö³Ö¤¬Â¸ºß¤·¤Æ¤¤¤Þ¤¹¡£', style_tag_spacing) insert('end', 'Spacing3¤Ï¤³¤ÎÎã¤Ç¤Ï»ÈÍѤµ¤ì¤Æ¤¤¤Þ¤»¤ó¡£ ', style_tag_spacing) insert('end', '´Ö³Ö¤¬¤É¤³¤Ë¤¢¤ë¤«¤ò¸«¤¿¤±¤ì¤Ð¡¢¤³¤ì¤é¤ÎÃÊÍî¤Î', style_tag_spacing) insert('end', '¤Ê¤«¤Ç¥Æ¥¥¹¥È¤òÁªÂò¤·¤Æ¤¯¤À¤µ¤¤¡£ÁªÂò¤Î', style_tag_spacing) insert('end', 'ȿž¤·¤¿Éôʬ¤Ë¤Ï;ʬ¤Ë¤È¤é¤ì¤¿´Ö³Ö¤¬', style_tag_spacing) insert('end', '´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£ ', style_tag_spacing) }