| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

差分

ナビゲーションに移動 検索に移動
1,341 バイト追加 、 2020年2月15日 (土) 07:33
ページの作成:「==Jython JFrame== [JFrame][Jython Swing][Swing][Jython][Python] ===方針=== *半ば強引に、[JFrame] [Swingで作成したサンプル]を Jythonに書き換え…」
==Jython JFrame==
[JFrame][Jython Swing][Swing][Jython][Python]

===方針===
*半ば強引に、[JFrame] [Swingで作成したサンプル]を Jythonに書き換えてみる。

===内容===
*イベントディスパッチスレッド

===ソースコード===
=====実行例=====
[[File:0747_js_jframe.jpg]]

=====ソースコード=====
# -*- coding: utf-8 -*-

from java.lang import *
from java.awt import BorderLayout, Dimension
from javax.swing import SwingUtilities, JFrame, JLabel

class JFrameTest(object):
def createUI(self):
# Windowの生成
frame = JFrame("FrameTest")

# Windowクローズ時にどうするか
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)

# ダミーコンポーネント
lbl = JLabel('')
lbl.preferredSize = (200,100)

# フレームにコンポーネントを乗せる
frame.contentPane.add(lbl, BorderLayout.CENTER)

# サイズ調節
frame.pack()

# 表示
frame.visible = True

# イベントディスパッチスレッドか?
print 'EventDispatchThread ? %s' % SwingUtilities.isEventDispatchThread()

class Invoker(Runnable):
def run(self):
jft = JFrameTest()
jft.createUI()

SwingUtilities.invokeLater(Invoker())

案内メニュー