不好意思,又要請教您了…JBUTTON在移動時,是extends MouseMotionAdapter那在調整大小時呢?就像windows改變視窗大小一樣,用拖拉的方式…
你是指Java Swing的JButton嗎? 查過Java SE API,並沒有針對JButton處理調整大小的事件Listener,不像JFrame一般有處理調整大小的事件Listener
我也查過沒有,就…工作嘛,請教一下,java的GUI界面可以耶,它是用C++處理的嗎?
不知道是那個Listener? 可否分享一下,或許可以寫出支援JButton的事件Listener,謝謝你
您誤會了,小弟是說就是像javafx scene builder,專門簡化GUI製作,所以我想應該是做得到,但是應該不是用Java做的,所以目前查不到Listener可用…
抱歉,又發生了一個問題,小弟想在ActionListener關閉MouseMotionListenerjButtonRun[i].removeMouseMotionListener(new jButtonRunMouseMotionListener());
試試看:JButton jbutton = new JButton();jbutton.addMouseListener(...);...MouseMotionListener[] mouseMotionListeners = jbutton.getMouseMotionListeners(); for(MouseMotionListener listener: mouseMotionListeners) { jbutton.removeMouseMotionListener(listener); }
哈…小弟發現直接用Boolean值當開關就好了,把裡面的方法不要執行,看起來就跟關掉一樣…
太感謝您的好書了,東抄抄西抄抄,小弟決定使用 JavaFX 2實做,可是…它的事件都叫handle(),小弟要如何才能簡化呢?以下是小弟的原始檔:https://mega.co.nz/#!Y0dmSJDQ!JukRh3U4Pxn4ev68jtF1oIWZ9Wiy6CNHdxpWEmVwggE
這種寫法可以,但我比較喜歡如書上範例16-20的寫法,比較簡化,可以試試看:// 開始縮放imageview.setOnZoomStarted(new EventHandler() { @Override public void handle(ZoomEvent e) { zoomfactor = imageview.getScaleX(); imageview.setEffect(new DropShadow()); e.consume(); }});另外若你用JavaFX 8,則可透過Lambda讓程式更簡化:// 開始縮放imageview.setOnZoomStarted((ZoomEvent e) -> { zoomfactor = imageview.getScaleX(); imageview.setEffect(new DropShadow()); e.consume();});
請教一下,小弟看您的書上--fx2--的問題:好像沒有觸碰『雙擊、按住』的說明?setOnTouchStationary試了一下,會一直輸出耶,不像win有彈出窗視那樣…雙擊:是要使用『時間差』來做嗎?
不好意思,一直打擾您…StackPane 跟 Group 有什麼不一樣嗎?查了一下下,說Group不能resizse?StackPane是FIBO?
不好意思,又要請教您了…
回覆刪除JBUTTON在移動時,是extends MouseMotionAdapter
那在調整大小時呢?
就像windows改變視窗大小一樣,用拖拉的方式…
你是指Java Swing的JButton嗎? 查過Java SE API,並沒有針對JButton處理調整大小的事件Listener,不像JFrame一般有處理調整大小的事件Listener
刪除我也查過沒有,就…工作嘛,請教一下,java的GUI界面可以耶,它是用C++處理的嗎?
刪除不知道是那個Listener? 可否分享一下,或許可以寫出支援JButton的事件Listener,謝謝你
刪除您誤會了,小弟是說就是像javafx scene builder,專門簡化GUI製作,所以我想應該是做得到,但是應該不是用Java做的,所以目前查不到Listener可用…
刪除抱歉,又發生了一個問題,小弟想在ActionListener關閉MouseMotionListener
回覆刪除jButtonRun[i].removeMouseMotionListener(new jButtonRunMouseMotionListener());
試試看:
刪除JButton jbutton = new JButton();
jbutton.addMouseListener(...);
...
MouseMotionListener[] mouseMotionListeners =
jbutton.getMouseMotionListeners();
for(MouseMotionListener listener: mouseMotionListeners) {
jbutton.removeMouseMotionListener(listener);
}
哈…小弟發現直接用Boolean值當開關就好了,把裡面的方法不要執行,看起來就跟關掉一樣…
刪除太感謝您的好書了,東抄抄西抄抄,小弟決定使用 JavaFX 2實做,可是…它的事件都叫handle(),小弟要如何才能簡化呢?
回覆刪除以下是小弟的原始檔:
https://mega.co.nz/#!Y0dmSJDQ!JukRh3U4Pxn4ev68jtF1oIWZ9Wiy6CNHdxpWEmVwggE
這種寫法可以,但我比較喜歡如書上範例16-20的寫法,比較簡化,可以試試看:
刪除// 開始縮放
imageview.setOnZoomStarted(new EventHandler() {
@Override public void handle(ZoomEvent e) {
zoomfactor = imageview.getScaleX();
imageview.setEffect(new DropShadow());
e.consume();
}
});
另外若你用JavaFX 8,則可透過Lambda讓程式更簡化:
// 開始縮放
imageview.setOnZoomStarted((ZoomEvent e) -> {
zoomfactor = imageview.getScaleX();
imageview.setEffect(new DropShadow());
e.consume();
});
請教一下,小弟看您的書上--fx2--的問題:
刪除好像沒有觸碰『雙擊、按住』的說明?
setOnTouchStationary試了一下,會一直輸出耶,不像win有彈出窗視那樣…
雙擊:是要使用『時間差』來做嗎?
不好意思,一直打擾您…
刪除StackPane 跟 Group 有什麼不一樣嗎?
查了一下下,說Group不能resizse?StackPane是FIBO?