余録:worldCup/jython/ex04/wcFrame.py
#! /usr/bin/env python # coding: utf-8 ## ---------------------------------------- ## ## (C) Copyright 2000-2010, 小粒ちゃん《監修》小泉ひよ子とタマゴ倶楽部 ## ## ---------------------------------------- ## History: Swing Example "2010 FIFA World Cup South Africa™" ## 2003/07, Java/Jython ## 2006/07, Jython ## 2008/02, Jython 2.2.1 ## 2010/06, Jython 2.5.0 #...+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8 """ >>> tips() >>> ## ---------------------------------------- >>> None version: #1.0.09abc """ from __init__ import * ## ---------------------------------------- demo: jython """ $ cd /Users/sketch/home_sketch/worldCup/jython/ $ jython -i ex04/wcFrame.py """ ## ---------------------------------------- from javax.swing import ImageIcon from javax.swing import JFrame from javax.swing import JLabel from javax.swing import JPanel from javax.swing import JSplitPane class TopPanel(JPanel): def __init__(self, master, *args, **keys): master.contentPane = self label1 = JLabel( icon = ImageIcon("matches/wc2010logo.png"), text = u"2010 FIFA World Cup South Africa™", horizontalAlignment = JLabel.CENTER, verticalTextPosition = JLabel.TOP, horizontalTextPosition = JLabel.CENTER, preferredSize = (120,150), ) label2 = JLabel( icon = ImageIcon("matches/fifa.png"), preferredSize = (180,0), ) splitPane = JSplitPane( orientation = JSplitPane.HORIZONTAL_SPLIT, oneTouchExpandable = True, dividerLocation = 100, leftComponent = label1, rightComponent = label2, ) self.add(splitPane) ## ---------------------------------------- def tips(): global Qt; Qt = \ frame = JFrame( title = "FIFA World Cup #04", size = (320,180), locationRelativeTo = None, defaultCloseOperation = JFrame.EXIT_ON_CLOSE, ) TopPanel(frame) frame.visible = True ## ---------------------------------------- if __name__=='__main__': inform() testmod() ## ========================================
Java の素描 #004: 分割した枠を利用する
‖記事一覧‖ Java.use(better, Swing=Jython) #FIFA World Cup への道《Jython2.5》
Java の素描 〜 Jython 弾丸ツアー:時短プログラミング生活のすすめ 〜
《著》森こねこ、伊藤うさぎ、小粒ちゃん@湘南組《監修》タマゴ倶楽部
第1版♪2003/05/23 ● 第2版♪2006/04/03 ● 第3版♪2010/06/11
|関連記事|
Step04: 分割した枠を利用する
二分割した窓枠を用意して、その中に他のコンポーネントを配置します。
from javax.swing import JSplitPane ... class TopPanel(JPanel): def __init__(self, master, *args, **keys): ... label1 = JLabel( icon = ImageIcon("matches/wc2010logo.png"), ... preferredSize = (120,150), ) label2 = JLabel( icon = ImageIcon("matches/fifa.png"), preferredSize = (180,0), ) splitPane = JSplitPane( orientation = JSplitPane.HORIZONTAL_SPLIT, oneTouchExpandable = True, dividerLocation = 100, leftComponent = label1, rightComponent = label2, ) self.add(splitPane) ## ---------------------------------------- def tips(): global Qt; Qt = \ frame = JFrame( ... )
分割した枠の左側にはラベル(テキストと画像)が、右側にはアイコン画像が表示されます。
■ 何が問題か
左側ではテキストの一部が、右側ではアイコン画像の一部が隠れて見えません。そこで、
》作業中です《