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

MyMemoWiki

Jython JFrame

提供: MyMemoWiki
2020年2月16日 (日) 04:28時点におけるPiroto (トーク | 投稿記録)による版
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

Jython JFrame

JFrame | Jython Swing | Swing | Jython | Python |

方針

内容

ソースコード

実行例

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