~/home_Jython/apple_/swingBeans/swingColor.py
|INDEX| Python.use(better, Java) #Jython
》作業中です《
#! /usr/bin/env python # coding: utf-8 ## ---------------------------------------- ## ## (C) Copyright 2000-2010, 小粒ちゃん《監修》小泉ひよ子とタマゴ倶楽部 ## ## ---------------------------------------- #...+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8 """ >>> tips() >>> ## ---------------------------------------- >>> None version: #1.0.09 """ ## ---------------------------------------- bash """ stty erase ^H PS1="$ " alias jython="/Users/sketch/home_Jython/_release/jython2.5.0/bin/jython" """ ## ---------------------------------------- Java/Jython ## ---------------------------------------- JFC/Swing ## ---------------------------------------- demo: java ## ---------------------------------------- demo: jython """ $ cd ~/home_Jython/apple_/refactoring/_swingTimer/ $ jython -i swingColor.py """ ## ---------------------------------------- from javax.swing import JFrame def tips(): frame = JFrame( title = "Color", size = (200,100), defaultCloseOperation = JFrame.EXIT_ON_CLOSE, ) TIPS(master = frame) frame.visible = True ## ---------------------------------------- from java.awt import Color from java.awt import GridLayout from javax.swing import JButton from javax.swing import JPanel from javax.swing import JSplitPane class TIPS(): colorNames = "red","green","blue", def __init__(self, master, *args, **keys): textPane = self._canvasPane( minimumSize = (50,100), ) controlPane = self._controlPane( items = self.colorNames, minimumSize = (80,100), actionPerformed = self.actionPerformed, ) self.splitPane = self._splitPane( leftComponent = textPane, rightComponent = controlPane, ) master.contentPane = self.splitPane def _canvasPane(self, **keys): comp = JPanel(**keys) self.canvas = comp return comp def _controlPane(self, items, actionPerformed, **keys): pane = JPanel( layout = GridLayout(0,1), **keys ) for e in items: comp = JButton( text = e, actionPerformed = actionPerformed, ) pane.add(comp) return pane def _splitPane(self, **keys): pane = JSplitPane( orientation = JSplitPane.HORIZONTAL_SPLIT, dividerLocation = 100, **keys ) return pane ## ---------------------------------------- def actionPerformed(self, e): # ActionListener s = e.source.text self.canvas.background = getattr(Color, s) ## ---------------------------------------- ## ---------------------------------------- from time import ctime from sys import argv, version def inform(n=60): print("="*n) print("Version: %s"%version.split("\n")[0]) print("Module : %s"%argv[0].split("/")[-1]) print("Date : %s"%ctime()) print("="*n) ## ---------------------------------------- from doctest import testmod if __name__=='__main__': inform() testmod() ## ========================================
Last updated♪2010/03/21