質問編集履歴

3

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

2020/12/24 00:12

投稿

退会済みユーザー
test CHANGED
@@ -1 +1 @@
1
- ウインドウサイズをプログラム側で変更したい。
1
+ ウインドウサイズをプログラム側で変更したい。GetLastError()関数で 87 パラメータが違いますというエラーが帰ってくる理由とは?
test CHANGED
File without changes

2

提示文章を修正しました。

2020/12/24 00:12

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -1,6 +1,6 @@
1
- 提示コードの///部ですがこのどうすればプログラムでコンソール画面のウインドウサイスを変更できるのでしょうか?どうやっても変更されません。SetWindowPos関数で変更するはずなのですが画面サイズが変更されません。これは一体どうすればいいのでしょうか?引数は正しく
1
+ 提示コードの///部ですがこのどうすればプログラムでコンソール画面のウインドウサイスを変更できるのでしょうか?どうやっても変更されません。SetWindowPos関数で変更するはずなのですが画面サイズが変更されません。これは一体どうすればいいのでしょうか?
2
-
2
+
3
- GetLastErro関数でエラーコードを調べましたが0でした正常でした。
3
+ GetLastErro関数でエラーコードを調べましたが87 [パラメータが間違えています]と表示されます
4
4
 
5
5
 
6
6
 

1

文章を修正しました。

2020/12/23 23:57

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,10 @@
1
- 提示コードの///部ですがこのどうすればプログラムでコンソール画面のウインドウサイスを変更できるのでしょうか?どうやっても変更されません。SetWindowPos関数で変更するみたいなのですがどうすればいいのでしょうか?
1
+ 提示コードの///部ですがこのどうすればプログラムでコンソール画面のウインドウサイスを変更できるのでしょうか?どうやっても変更されません。SetWindowPos関数で変更するはずなのですが画面サイズが変更されません。これは一体どうすればいいのでしょうか?引数は正しく
2
+
3
+ GetLastErro関数でエラーコードを調べましたが0でした。正常でした。
4
+
5
+
6
+
7
+
2
8
 
3
9
 
4
10
 
@@ -115,3 +121,105 @@
115
121
 
116
122
 
117
123
  ```
124
+
125
+ ```hpp
126
+
127
+
128
+
129
+ // ウインドウサイズ
130
+
131
+ #define MAX_WIDTH ((int)16 * 10)
132
+
133
+ #define MAX_HEIGHT ((int)9 * 10)
134
+
135
+
136
+
137
+ /*################################################
138
+
139
+ * 文字を描画するクラス
140
+
141
+ ################################################*/
142
+
143
+
144
+
145
+ class ScreenBuffer
146
+
147
+ {
148
+
149
+ public:
150
+
151
+
152
+
153
+ ScreenBuffer(); //コンストラクタ
154
+
155
+ ~ScreenBuffer(); //デストラクタ
156
+
157
+
158
+
159
+ void GenerateOutput(); //描画する
160
+
161
+
162
+
163
+ void Draw(int H, int W, const char* format, ...); //バッファーに書き込み
164
+
165
+ void DrawLoop(int H, int W,int speed, const char* format, ...); //バッファーに書き込み 足しなくった文字はループする
166
+
167
+ void CursorPosition(int x,int y); //カールの座標を設定
168
+
169
+ void DrawAA(int H, int W, const char* format, ...); //アスキーアート一文字を書く
170
+
171
+
172
+
173
+
174
+
175
+
176
+
177
+
178
+
179
+ HANDLE getHandle();
180
+
181
+
182
+
183
+ private:
184
+
185
+
186
+
187
+
188
+
189
+ CHAR_INFO mScreenBuffer[MAX_HEIGHT][MAX_WIDTH]; //画面バッファ
190
+
191
+ HANDLE mHandle; //ハンドル
192
+
193
+
194
+
195
+ COORD mDraw_start; //描画開始位置
196
+
197
+ COORD mDraw_size; //画面のサイズ
198
+
199
+ _SMALL_RECT mRect; //画面の描画範囲
200
+
201
+
202
+
203
+ /* 格納できる文字数をカウント */
204
+
205
+ int mNowBuffer_width[MAX_HEIGHT]; //横
206
+
207
+ int mNowBuffer_height = 0; //縦
208
+
209
+
210
+
211
+ Debug_Log *mText; //デバッグ用テキスト出力
212
+
213
+
214
+
215
+
216
+
217
+
218
+
219
+
220
+
221
+ };
222
+
223
+ #endif;
224
+
225
+ ```