回答編集履歴

4

誤記

2018/10/21 04:09

投稿

KSwordOfHaste
KSwordOfHaste

スコア18394

test CHANGED
@@ -58,7 +58,7 @@
58
58
 
59
59
  1.5.1は「JREがないよー」と言われて起動できませんでした。自分のPCにはjdk10.0.2しか入ってないのでそれをProcesing1.5.1が検出してくれないのかも知れません。
60
60
 
61
- Procesing2.2.1でやってみたところ、とりあえず下記コードで期待どうりの動作をするように見えました。
61
+ Procesing2.2.1でやってみたところ、とりあえず下記コードで期待りの動作をするように見えました。
62
62
 
63
63
  ```Java
64
64
 

3

追記

2018/10/21 04:08

投稿

KSwordOfHaste
KSwordOfHaste

スコア18394

test CHANGED
@@ -46,6 +46,64 @@
46
46
 
47
47
 
48
48
 
49
- 追記・訂正
49
+ 追記・訂正:
50
50
 
51
51
  すみません、ご質問に「Processing1.5.1という昔のバージョンを入れて試してみましたが同じエラー」とあるのを見落としてました。自分の回答は「Processing3では動かなそう」ということしか言っておらず、「Procesing1.5.1で動かない原因」については何も言えてませんでした。ppopupmenuは2011年にコミット、その当時のProcessingのリリースバージョンはまだ2より前なので1.5.1でも同じエラーが出る理由が自分にはわかりません><
52
+
53
+
54
+
55
+ 追記2:
56
+
57
+ 最小限のテストをやってみました。
58
+
59
+ 1.5.1は「JREがないよー」と言われて起動できませんでした。自分のPCにはjdk10.0.2しか入ってないのでそれをProcesing1.5.1が検出してくれないのかも知れません。
60
+
61
+ Procesing2.2.1でやってみたところ、とりあえず下記コードで期待どうりの動作をするように見えました。
62
+
63
+ ```Java
64
+
65
+ import ppopupmenu.*;
66
+
67
+
68
+
69
+ PPopupMenu menu;
70
+
71
+
72
+
73
+ void setup() {
74
+
75
+ size(200, 200);
76
+
77
+ menu = new PPopupMenu(this);
78
+
79
+ menu.addMenuItem("red", "foo");
80
+
81
+ }
82
+
83
+
84
+
85
+ void draw() {
86
+
87
+ }
88
+
89
+
90
+
91
+ void mouseClicked() {
92
+
93
+ if (mouseButton == RIGHT) {
94
+
95
+ menu.show(mouseX, mouseY);
96
+
97
+ }
98
+
99
+ }
100
+
101
+
102
+
103
+ void foo() {
104
+
105
+ println("foo: invoked");
106
+
107
+ }
108
+
109
+ ```

2

追記

2018/10/18 18:51

投稿

KSwordOfHaste
KSwordOfHaste

スコア18394

test CHANGED
@@ -43,3 +43,9 @@
43
43
 
44
44
 
45
45
  参考書籍のサンプルを試しておられるということで、多分その参考書籍はProcessing2前提のコードが記載されているのでしょうから、(前述の推測が正しければ)Processing2を用いるのが一番簡単だと思います。Processing2はProcessingのダウンロードページからダウンロードできますのでそちらをインストールして試してみてはいかがでしょう。
46
+
47
+
48
+
49
+ 追記・訂正:
50
+
51
+ すみません、ご質問に「Processing1.5.1という昔のバージョンを入れて試してみましたが同じエラー」とあるのを見落としてました。自分の回答は「Processing3では動かなそう」ということしか言っておらず、「Procesing1.5.1で動かない原因」については何も言えてませんでした。ppopupmenuは2011年にコミット、その当時のProcessingのリリースバージョンはまだ2より前なので1.5.1でも同じエラーが出る理由が自分にはわかりません><

1

ソース行番号を訂正

2018/10/18 18:35

投稿

KSwordOfHaste
KSwordOfHaste

スコア18394

test CHANGED
@@ -20,7 +20,7 @@
20
20
 
21
21
  PPopupMenuはswingのJPopupMenuの派生クラスとして実装されているようです。(32行目あたり)
22
22
 
23
- このクラスはポップアップの表示を`JPopupMenu#show(java.awt.Component, int, int)`メソッドを用いて行っています。(44行目あたり)第一引数のComponent型の値としてtargetフィールドの値、すなわちPAppletのインスタンスを指定している(※1)ことに注意してください。
23
+ このクラスはポップアップの表示を`JPopupMenu#show(java.awt.Component, int, int)`メソッドを用いて行っています。(60行目あたり)第一引数のComponent型の値としてtargetフィールドの値、すなわちPAppletのインスタンスを指定している(※1)ことに注意してください。
24
24
 
25
25
 
26
26