質問編集履歴

4

文章を修正

2021/09/10 13:14

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -82,6 +82,8 @@
82
82
 
83
83
 
84
84
 
85
+
86
+
85
87
  while (true)
86
88
 
87
89
  {
@@ -98,12 +100,12 @@
98
100
 
99
101
  key = 0;
100
102
 
103
+
104
+
101
105
  key = getch();
102
106
 
103
107
 
104
108
 
105
-
106
-
107
109
  switch(key)
108
110
 
109
111
  {
@@ -132,12 +134,20 @@
132
134
 
133
135
 
134
136
 
135
- case KEY_LEFT:
137
+ case KEY_LEFT:
136
138
 
137
139
  {
138
140
 
139
141
  x--;
140
142
 
143
+ }
144
+
145
+ break;
146
+
147
+
148
+
149
+ case KEY_RIGHT:
150
+
141
151
  {
142
152
 
143
153
  x++;
@@ -146,13 +156,15 @@
146
156
 
147
157
  break;
148
158
 
159
+
160
+
149
161
 
150
162
 
151
163
  case 'q':
152
164
 
153
165
  {
154
166
 
155
- std::cout<<"a"<<std::endl;
167
+ // std::cout<<"a"<<std::endl;
156
168
 
157
169
  exit = true;
158
170
 
@@ -162,47 +174,43 @@
162
174
 
163
175
  }
164
176
 
165
- break;
177
+ break;
178
+
166
-
179
+ }
167
-
168
-
180
+
181
+
182
+
169
- case KEY_MOUSE:
183
+ if(getmouse(&event) == OK)
170
-
184
+
171
- {
185
+ {
186
+
172
-
187
+ if(event.bstate & REPORT_MOUSE_POSITION)
188
+
173
-
189
+ {
190
+
174
-
191
+ file<<"mouse position: "<< event.x<<" , " << event.y<<std::endl;
192
+
175
- }
193
+ }
176
-
177
- break;
194
+
178
-
179
-
180
-
181
- }
195
+ }
182
-
183
-
196
+
197
+
198
+
199
+
200
+
201
+
184
202
 
185
203
 
186
204
 
187
205
  //マウス座標
188
206
 
189
- if( key == KEY_MOUSE)
207
+ if(key == KEY_MOUSE)
190
208
 
191
209
  {
192
210
 
193
- if(getmouse(&event) == OK)
211
+
194
-
195
- {
212
+
196
-
197
- if(event.bstate & REPORT_MOUSE_POSITION)
213
+
198
-
199
- {
200
-
201
- file<<"mouse position: "<< event.x<<" , " << event.y<<std::endl;
202
-
203
- }
204
-
205
- }
206
214
 
207
215
  }
208
216
 
@@ -226,10 +234,6 @@
226
234
 
227
235
 
228
236
 
229
-
230
-
231
-
232
-
233
237
  endwin(); //終了 
234
238
 
235
239
  return 0;

3

文章をタイトルを修正しました。

2021/09/10 13:14

投稿

退会済みユーザー
test CHANGED
@@ -1 +1 @@
1
- ncursesライブラリ マウス座標を実装したい。
1
+ ncursesライブラリ マウス座標常時取得したい。
test CHANGED
@@ -1,12 +1,16 @@
1
1
  ###やりたいこと
2
2
 
3
- マウス座標を取得してマウスによる画面操作を実装い。
3
+ マウス座標をクリックしていない時でも取得してしいです
4
4
 
5
5
 
6
6
 
7
7
  ###質問内容
8
8
 
9
- ncursesライブラを使ってマウスの座標を得る方法が知りたい下記参考サイトより実装したのですがswitch文が分岐してくれない理由がわかりません。テキトファイルに出力してそこにコードが移行しているか検証ましが移行してません、またファイル出力は十字キー試しました正常に出力さのでファイルの書き込みには問題はありません。
9
+ 提示コードの//マウス コメント部ですがこれはマウスがクックしいる間マウスの座標をるのですがマウスのキーを押してないときも常時マウの座標取得したいその場合どうやって取得すのでしょうか?
10
+
11
+
12
+
13
+
10
14
 
11
15
 
12
16
 
@@ -54,7 +58,7 @@
54
58
 
55
59
  bool exit = false;
56
60
 
57
- std::ofstream file("text.txt");
61
+ std::ofstream file("log.txt");
58
62
 
59
63
 
60
64
 
@@ -72,7 +76,7 @@
72
76
 
73
77
 
74
78
 
75
- mousemask(REPORT_MOUSE_POSITION,NULL); // マウスイベントを取得
79
+ mousemask(ALL_MOUSE_EVENTS | REPORT_MOUSE_POSITION,NULL); // マウスイベントを取得
76
80
 
77
81
  MEVENT event;
78
82
 
@@ -134,22 +138,6 @@
134
138
 
135
139
  x--;
136
140
 
137
- //std::cout<<"あああ "<<str;
138
-
139
- //file<< "あああ" <<std::endl;
140
-
141
-
142
-
143
-
144
-
145
- }
146
-
147
- break;
148
-
149
-
150
-
151
- case KEY_RIGHT:
152
-
153
141
  {
154
142
 
155
143
  x++;
@@ -182,38 +170,46 @@
182
170
 
183
171
  {
184
172
 
173
+
174
+
175
+ }
176
+
177
+ break;
178
+
179
+
180
+
181
+ }
182
+
183
+
184
+
185
+
186
+
187
+ //マウス座標
188
+
189
+ if( key == KEY_MOUSE)
190
+
191
+ {
192
+
185
- if(getmouse(&event) == OK)
193
+ if(getmouse(&event) == OK)
186
-
194
+
187
- {
195
+ {
188
-
196
+
189
- if(event.bstate & REPORT_MOUSE_POSITION)
197
+ if(event.bstate & REPORT_MOUSE_POSITION)
190
-
198
+
191
- {
199
+ {
192
-
200
+
193
- //std::cout<<event.y<<" "<<event.x;
201
+ file<<"mouse position: "<< event.x<<" , " << event.y<<std::endl;
194
-
195
- //str = std::to_string(event.x);
196
-
197
- //std::cout<<str<<std::endl;
198
-
199
-
200
-
201
- file<<"あああ"<< event.x<<std::endl;
202
-
203
- }
204
202
 
205
203
  }
206
204
 
207
- }
205
+ }
208
-
209
- break;
210
-
211
-
212
206
 
213
207
  }
214
208
 
215
209
 
216
210
 
211
+ //終了処理
212
+
217
213
  if(exit == true)
218
214
 
219
215
  {
@@ -240,6 +236,4 @@
240
236
 
241
237
  }
242
238
 
243
-
244
-
245
239
  ```

2

文章を修正しました。

2021/09/10 12:53

投稿

退会済みユーザー
test CHANGED
@@ -1 +1 @@
1
- ncursesライブラリ マウス操作を実装したい。
1
+ ncursesライブラリ マウス座標を実装したい。
test CHANGED
File without changes

1

文章を修正しました。

2021/09/10 12:02

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  ###質問内容
8
8
 
9
- ncursesライブらいを使ってマウスの座標を得る方法が知りたい下記の参考サイトより実装したのですがswitch文が分岐してくれない理由がわかりません。テキストファイルに出力してそこにコードが移行しているかを検証しましたが移行していません、またファイル出力は十字キーで試しましたが正常に出力されているのでファイルの書き込みには問題はありません。
9
+ ncursesライブラリを使ってマウスの座標を得る方法が知りたい下記の参考サイトより実装したのですがswitch文が分岐してくれない理由がわかりません。テキストファイルに出力してそこにコードが移行しているかを検証しましたが移行していません、またファイル出力は十字キーで試しましたが正常に出力されているのでファイルの書き込みには問題はありません。
10
10
 
11
11
 
12
12