サンプル フォルダーのソースを調べることをお勧めします。このhttp://pyjs.org/book/output/Bookreader.html#Getting%20Startedから始めます
私にとって役立つリンクがいくつかあります:
http://gwt.google.com/samples/Showcase/Showcase.html
http://pyjs.org/examples/
また、examples フォルダーには、showcase
すべての API と役立つコード サンプル /localhost/somedir/showcase/output/Showcase.html を提供する素晴らしい例があります。
API は類似しているため、いつでも書籍を確認できます (特に、コールバックなどを理解するのに役立ちます)。
http://www.amazon.com/Beginning-Google-Web-Toolkit-Professional/dp/1430210311/ref=sr_1_12?ie=UTF8&qid=1334659695&sr=8-12
http://www.amazon.com/Google-Toolkit-Applications-Ryan-Dewsbury/dp/0321501969/ref=sr_1_7?ie=UTF8&qid=1334659695&sr=8-7
Django とパジャマ用
http://www.derekschaefer.net/2011/02/08/pyjamas-django-pure-win/
ただし、Hello World の例を超えた、より優れた導入チュートリアルが必要であることに同意します。私はそれで苦労しています。幸運を
ps。動作するように見える小さなコールバックの例を作成しました。人々がここで私を修正し、この例を編集して人々にとってより役立つようになれば、私は素晴らしいと思います. ここでやろうとしているのは、2 つのページでナビゲーションを行うことだけです (2 つのクラスで表されます: Intro と Outro )。
インポートpyjd
from pyjamas.ui.VerticalPanel import VerticalPanel
from pyjamas.ui.RootPanel import RootPanel
pyjamas.ui.SimplePanel からインポート SimplePanel
pyjamas.ui.DockPanel から DockPanel をインポート
from pyjamas.ui.Hyperlink import ハイパーリンク
from pyjamas.ui.Button import ボタン
from pyjamas.ui.HTML import HTML
パジャマインポート画面から
クラス Site(SimplePanel):
def onModuleLoad(self):
SimplePanel.__init__(self)
self.panel = DockPanel()
self.intro = イントロ()
self.outro = Outro()
self.index = HTML('インデックス')
self.curPage = self.index
vp=垂直パネル()
vp.add(self.index)
self.link1 = ハイパーリンク('メニュー項目 1')
self.link2 = ハイパーリンク('メニュー項目 2')
self.link1.addClickListener(getattr(self, 'onLINK1'))
self.link2.addClickListener(getattr(self, 'onLINK2'))
self.panel.add(self.link1, DockPanel.WEST)
self.panel.add(self.link2, DockPanel.WEST)
self.panel.add(self.index, DockPanel.CENTER)
RootPanel().add(self.panel)
def onLINK1(self):
self.panel.remove(self.curPage, DockPanel.CENTER)
self.panel.add(self.intro, DockPanel.CENTER)
self.curPage = self.intro
def onLINK2(self):
self.panel.remove(self.curPage, DockPanel.CENTER)
self.panel.add(self.outro, DockPanel.CENTER)
self.curPage = self.outro
クラス紹介(SimplePanel):
def __init__(自己):
SimplePanel.__init__(self)
self.vp = VerticalPanel()
self.html = HTML('イントロです')
self.button = Button('クリックしてください', self)
self.vp.add(self.html)
self.vp.add(self.button)
self.setWidget(self.vp)
デフォルトonClick(自己):
Window.alert('onClick イントロ')
クラス Outro(SimplePanel):
def __init__(自己):
SimplePanel.__init__(self)
self.vp = VerticalPanel()
self.html = HTML('これはエンディングです')
#こんな風にできる
self.button1 = Button('click me1', getattr(self, 'onBUTTON1'))
self.button2 = ボタン('click me2')
#またはリスナーを設定する
self.button2.addClickListener(getattr(self,'onBUTTON2'))
self.vp.add(self.html)
self.vp.add(self.button1)
self.vp.add(self.button2)
self.setWidget(self.vp)
def onBUTTON1(self):
Window.alert('button1 からこんにちは')
def onBUTTON2(self):
Window.alert('button2 からこんにちは')
__name__ == '__main__' の場合:
pyjd.setup('./Site.html')
アプリ = サイト()
app.onModuleLoad()
pyjd.run()