統合開発環境Eclipse ..
[2ch|▼Menu]
548:デフォルトの名無しさん
06/11/24 20:28:54
どうして単独のSWT上のCanvasでマウスホイールイベントを取得するとうまくいくのに、
プラグイン開発でViewPartに配置したCanvasでマウスホイールイベントを取得すると
反応しないのはなぜなんだぜ?

549:デフォルトの名無しさん
06/11/24 20:54:52
ソースさらすよろし

550:デフォルトの名無しさん
06/11/24 20:59:42
うちでは問題ありませんなんだぜ。

551:デフォルトの名無しさん
06/11/24 21:11:40
CSVエディタを作ってたがもう辞める。
SWTのテーブルにはうんざりだよ。

552:デフォルトの名無しさん
06/11/25 00:04:37
これでダメ。助けて、パパ〜〜〜〜〜

public class ViewPart1 extends ViewPart implements Listener{
...[中略]...
@Override
public void createPartControl(Composite parent) {
canvas = new Canvas(parent, SWT.None);
canvas.addListener(SWT.MouseDown, this);
canvas.addListener(SWT.MouseHover, this);
canvas.addListener(SWT.MouseDoubleClick, this);
canvas.addListener(SWT.MouseWheel, this);
}
...[中略]...
public void handleEvent(Event event) {
System.out.println(event);
}



553:デフォルトの名無しさん
06/11/25 00:06:13
「これでダメ」じゃわかんねか。
SWT.MouseWheelだけイベントが取得できず、それ以外はちゃんとSystem.out.printlnされる

554:デフォルトの名無しさん
06/11/25 01:05:22
public void createPartControl(Composite parent) {
parent.setLayout(new FillLayout());
canvas = new Canvas(parent, SWT.NONE);
canvas.addListener(SWT.MouseWheel, new Listener() {
public void handleEvent(Event event) {
System.err.println("hage");
}
});
}
でうまくいく俺は勝ち組。

555:デフォルトの名無しさん
06/11/25 01:29:25
レイアウトあるね

556:デフォルトの名無しさん
06/11/25 01:57:19
だめだ。かなり負け組み感ただようよ。
ちなみにこれだとうまくいきやがるぜ、baby(赤ちゃん)
public class SWTScroll {
public static void main(String[] args) {
Display display = new Display();
Shell shell = new Shell(display);
Canvas canvas = new Canvas(shell, SWT.NONE);
canvas.addListener(SWT.MouseWheel, new Listener(){
public void handleEvent(Event event) {
System.out.println("wheel");
}
});
shell.open();
while(!shell.isDisposed()){
if(!display.readAndDispatch()){
display.sleep();
}
}
display.dispose();
}

}


557:デフォルトの名無しさん
06/11/25 13:28:22
おい!

public void setFocus() {
canvas.forceFocus();
}

これを加えたらうまくいきやがりましたよ。
お騒がせしました。今は反省していない



最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

4904日前に更新/164 KB
担当:undef