ニートです1からプログラミングを教えてくれる [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
1たかし
垢版 |
2015/12/25(金) 18:43:55.48
先生を募集します

先生!!
2016/01/03(日) 23:19:47.41
バイナリ形式のnバイトの整数データを書き込むときに、上位バイトと下位バイトのどちらを
先に書き込むのかは、システムによって異なる。
C#では下位バイトを先に書き込む。このようなデータ形式をリトルエンディアンという。
バイナリデータの読み書きにおいてはデータサイズを常に意識しないといけない。
2016/01/03(日) 23:25:19.57
>>218
usingは記述を少なくして楽をするために使う。
重複した長いコードを何度も記述すると、コードを読むのも書くのも疲れるだろう。
2016/01/03(日) 23:41:47.25
お休み。次はお待ちかねのWinFormsをやるぞ。
222takasi
垢版 |
2016/01/03(日) 23:52:49.05
下位バイトとか上位バイトとかその他にも専門的な用語が散見されてこれはもう本買って読んだほうが良いかもしれませんね ついて行けてない感

ありがとうございましたおやすみなさい
2016/01/03(日) 23:55:14.54
.exeファイルもテキストファイルではないからバイナリである。
.csファイルはテキストファイルだから、バイナリファイルではない。
バイナリファイルをテキストエディタで開くと文字化けすることがある。
224takasi
垢版 |
2016/01/03(日) 23:57:05.92
文字もバイナリデータの集まりでは無いのでしょうか?
2016/01/04(月) 00:19:47.33
>>224
人間は動物だが、人間のことを動物呼ばわりすると失礼だろ。慣例だよ、慣例。
226takasi
垢版 |
2016/01/04(月) 00:33:15.96
そういうものなのですね
こういう性格なので飲み込みが遅いです・・・
227takasi
垢版 |
2016/01/04(月) 00:35:52.82
WinFormsはGUIを持ったプログラムなんですね!
アプリ制作に一歩近づきますね
2016/01/04(月) 04:58:07.33
どんなアプリ作りたいの?
229takasi
垢版 |
2016/01/04(月) 17:26:48.96
目下の目標はwindowsアプリの自動シャットダウンタイマーと最前面表示できるテキストエディタですね
230takasi
垢版 |
2016/01/04(月) 17:29:23.69
おはようございます
2016/01/04(月) 17:41:18.88
Windowsフォームアプリを作るよ。ファイルメニューからプロジェクトを新規作成。
Visual C#のWindowsフォームアプリケーションを選択してOK。
フォームのデザインが表示される。
2016/01/04(月) 17:46:27.36
1つ注意点がある。デザインのために自動生成されるコードには直接触らない。
編集する前にコメントを読んで自動生成コードじゃないか確認。
下手に編集するとデザインが変更できなくなる。
2016/01/04(月) 17:53:48.61
Form1のデザインでフォームを右クリックしてプロパティを選べ。
フォームのプロパティが表示される。
Textプロパティを「こんにちはWinForms」に変更してEnterキー。
TopMostというプロパティを探し出してTrueにしろ。
2016/01/04(月) 17:57:14.76
デザインが変わったのを確認してデバッグ開始。これでWinFormsアプリができた。
次にVS画面の右側に縦書きで「ツールボックス」という項目があるだろう。クリックしてみよ。
2016/01/04(月) 18:02:08.20
すべてのWindowsフォームをクリックして展開。ボタンを追加するぞ。
Buttonをクリック。デザインフォーム上をドラッグ。これでボタンができた。
ボタンを右クリックしてプロパティ。Textに「終了」と入力してEnter。
さらにボタンをダブルクリック。
2016/01/04(月) 18:06:23.24
button1_ClickメソッドがForm1クラスに追加される。
そこで「this.Close();」と入力する。デバッグ実行せよ。
2016/01/04(月) 18:15:36.71
課題。デザインフォームにいくつかLabelとTextBoxを追加して
BMIを計算するアプリを作れ。
ヒント:Textプロパティに文字列をセット
238takasi
垢版 |
2016/01/04(月) 18:20:20.49
おはおうございます
今から始めます
2016/01/04(月) 18:39:03.30
つまずいたら質問したまえ
2016/01/04(月) 18:55:12.12
どうした?
241takasi
垢版 |
2016/01/04(月) 19:15:10.35
できました!https://i.gyazo.com/e13d55b77a9005e84156751faeb1aa83.png
すべてのWindowsフォームが見つからずつまづきました
テキストボックスやラベルの縦のサイズは変更できないんですかね?
2016/01/04(月) 19:20:13.65
>>241
複数行(multiline)にするプロパティがあるはずだ。
TopMostプロパティはフォームを最前面に保つ働きをする。
2016/01/04(月) 19:24:49.22
Form1はクラスだから、1プロセスに複数のインスタンスを作ることができる。
ソースコード全体がどうなってるか把握しなさい。
244takasi
垢版 |
2016/01/04(月) 19:32:25.17
マルチライン見つけました
ソースコード把握しあした
2016/01/04(月) 19:34:57.02
「ボタンを押す」という出来事(イベント)に対してメソッドで処理を行う。
典型的なイベント駆動型プログラミングだね。
プロパティとイベントの使い方をマスターすれば、さまざまなアプリを作れるだろう。
246takasi
垢版 |
2016/01/04(月) 19:36:52.54
はいい!
2016/01/04(月) 19:52:07.73
新しいアプリを作成しよう。フォームのTopMostをTrueにする。フォームのAutoSizeModeをGrowAndShrinkにする。
TextBoxを配置。TextBoxを複数行に。TextBoxのDockをFillに。デバッグ開始。
248takasi
垢版 |
2016/01/04(月) 20:03:22.86
できました!https://i.gyazo.com/5c6e00277ece5f85d540dfafee9965de.png
Textに入力する文字は改行できないのでしょうか?
249takasi
垢版 |
2016/01/04(月) 20:06:06.13
右の↓をクリックしたら入力幅が広がって改行できるようになりました
250takasi
垢版 |
2016/01/04(月) 20:08:19.79
メモ:プロパティのTextの右側の↓クリック
https://i.gyazo.com/edfc66c55f84d20ab93181c0f392156a.png
2016/01/04(月) 20:08:20.64
>>248
AcceptsReturnプロパティ。昔はEnterキーのことをReturnキーと言っていた。
このフォームにメニューを付ければテキストエディタに見えるだろう。
252takasi
垢版 |
2016/01/04(月) 20:13:32.06
もしかしてwin純正のメモ帳もTextBoxを画面いっぱいに表示して作られてるんですか?
C#で作られてるかはワカリマセンが
2016/01/04(月) 20:16:02.92
テキストボックスがフォーム全体に広がっているからフォームを右クリックできない。
こんなときは「プロパティ」ウィンドウの上側のコンボボックスで切り替える。
プロパティウィンドウのカミナリアイコンをクリックするとすべてのイベントが見れるぞ。
2016/01/04(月) 20:24:12.46
>>252
メモ帳はC/C++で作られている。C/C++のテキストボックスはEDITというウィンドウクラスから
作られており、C#のそれとは多少違う。フォームのサイズが
変更されたらWM_SIZEメッセージを受け取り、テキストボックスのサイズを
合わせるといった原始的なことをやっている。
255takasi
垢版 |
2016/01/04(月) 20:30:27.61
C#でも純正メモ帳と全く同じようなものを作れるのでしょうか?
またC/C++でシンプルなメモ帳を作る人がいたらその理由は何でしょうか?
C#の方が楽に作れる気がするのですが
C/C++にもwinformsみたいなのがあって楽に作れるんですかね
2016/01/04(月) 20:33:38.76
そのサイズを合わせるのもSetWindowPosとかMoveWindowといったAPI関数呼び出しで
しなきゃいけない。プロパティは使わない。
なんというか、C/C++は生産性が低く、スマートではない。
2016/01/04(月) 20:36:55.39
C#は.NETという枠組みで動くが、C/C++はそれより外側の、OSに近い低レベルなところで動く。
.NETがなかった頃はVBやC/C++などしかなかった。
2016/01/04(月) 20:42:57.76
実行環境に.NETがないと動かない。これが最大のデメリット。
259takasi
垢版 |
2016/01/04(月) 20:44:09.57
わかったようなわからないような
C/C++は細かいところをいじれる と、いうか細かくしかいじれない感じですね
260takasi
垢版 |
2016/01/04(月) 20:46:04.98
.NET FREAMWORKSでしたっけ?あれがなきゃC#を動かせないんですか ふむふむ
WINマシンでしか動かせないんでしょうか?
261takasi
垢版 |
2016/01/04(月) 20:46:48.59
汎用的に動かせるのがC/C++という認識で良いでしょうか
262takasi
垢版 |
2016/01/04(月) 20:51:18.05
お風呂へ入ってきます
2016/01/04(月) 21:28:34.66
C++は基本的に自由だからフレームワークがいくつもある。
GTK+、Qt、Tcl/Tk etc.
しかしどれも決定的なものはなく、
インテリセンスが満足に動かない開発環境がほとんどだ。
迷路に迷うのも自由。避難指定地域へ行くのも自由。こめかみを撃ち抜くのも自由。
技術者の迷い道しかない。
2016/01/04(月) 21:40:53.25
LinuxにはMonoというフレームワークがあり、これが.NET Framework互換になっている。
だからC#で作ったゲームをLinuxで動かすということもある程度できる。
2016/01/04(月) 21:44:47.77
このようなゲーム作りに興味があるなら、「Unity C#」を検索したまえ。
Unityは今、もっとも熱いゲームエンジンだ。
2016/01/04(月) 22:09:53.21
おまえら、おれは吊り、自演じゃないと信じて応援すっけど、スカイプとかメールでやりとりしたほうが早くねえか?w
2016/01/04(月) 23:01:30.52
おやすみ
268takasi
垢版 |
2016/01/05(火) 00:48:16.91
なるほど、とりあえず今は何も考えずにC#やりますね
おやすみなさい

>>266
釣りとか自演の類に見えますかね??
いやあ色んな人から教わりたいですし、こういうところで経過報告した方が続くかなと思いまして
別に片山さんとマンツーマンでやってるわけでもなく>>144さんから出された課題もこなしてるので
僕に教えたいことがあればなんでも言って下さい
僕は>>5なので
269takasi
垢版 |
2016/01/05(火) 11:47:55.24
おはようございます
何やればいいかわからないのでpaizaCランク全部やります
270takasi
垢版 |
2016/01/05(火) 12:02:05.14
難易度がぐっとあがった・・・
本借りてきます
2016/01/05(火) 12:48:08.14
>>270
Cランカーなめんなw
272takasi
垢版 |
2016/01/05(火) 13:05:06.06
1週間の勉強じゃ足りないでしょうか?
何やればいいですかねえ、自分で課題探すのすごく苦手です
273takasi
垢版 |
2016/01/05(火) 13:06:35.55
模範解答を見てみたんですが、見たことのない関数が使われていたので
全ての関数が列挙された本とか買えばいいですかね
2016/01/05(火) 14:05:15.20
逆引き系ならポケットリファレンスかな?基礎学びたいなら独習C#。
この辺は片山先生の意見を待ってみたらいいかもしれない。
275takasi
垢版 |
2016/01/05(火) 14:14:02.02
とりあえず検索で出てきた勉強サイトで基礎を復習しつつ演習解きまくってみます
276takasi
垢版 |
2016/01/05(火) 15:16:07.30
ポケットリファレンスですか、本屋でどんなものか見てきあmスね
277takasi
垢版 |
2016/01/05(火) 15:20:23.33
本にしろサイトでの勉強にしろ結局は自分でどこまでやるか目標決めなくてはならないので
今の授業スタイルはこれをやれ、と指定された明確な目標があるからやりやすいですね
自分で勉強できない人間は独学というのは難しい・・
278takasi
垢版 |
2016/01/06(水) 20:53:45.88
おはようございます!!!!!!!センセーーーーーーーーー!!!!!!!
2016/01/06(水) 21:03:10.86
今日はメニューとダイアログをやろう。
ツールボックスのMenuStripをダブルクリックしてフォームに追加。
デザインフォームのメニューを右クリックして標準項目を追加。
ファイルメニューの終了をダブルクリックして終了コードを書き込む。
ツールメニューに「テスト(&T)」を追加。それをダブルクリック。
2016/01/06(水) 21:05:51.24
MessageBox.Show("テストです", "テスト", MessageBoxButtons.OKCancel);
というコードを追加。
2016/01/06(水) 21:10:04.76
ユーザーはコンピュータと対話するためにダイアログボックスというものを使う。
メッセージボックスは、ボタンを押すだけのシンプルなダイアログだ。
コモンダイアログは、「ファイルを開く」「印刷」などのよく使う共通のダイアログである。
2016/01/06(水) 21:16:57.15
ダイアログは「OK」「キャンセル」などのボタンが押されるか、Escキーが押されるまで
コントロール項目へのデータ入力を待つ。「OK」が押されるとダイアログ上の
コントロール項目のデータを読み込んでアプリに反映させて、ダイアログが閉じられる。
「キャンセル」やEscキーだとダイアログが閉じられるだけだ。
2016/01/06(水) 21:25:02.30
メニューはコマンドを選択するだけでなく、コマンドに関する現在の
状態や、ショートカットを表示したりできる。
2016/01/06(水) 21:29:03.68
デザインを間違ったときは、Ctrl+Zで1つ元に戻すことができる。
Ctrl+Yはその逆で1つ進めることができる。
285takasi
垢版 |
2016/01/06(水) 21:48:43.25
おはようございます今から始めます
2016/01/06(水) 22:02:40.71
独自のダイアログを作りたいなら、プロジェクトに新しいフォームを追加して
まずはMaximizeBox、MinimizeBox、ShowInTaskbarをFalseにする。
http://www.atmarkit.co.jp/fdotnet/dotnettips/139dialog/dialog.html
これを読んでテストがクリックされたら、自作のダイアログを表示するようにしなさい。
287takasi
垢版 |
2016/01/06(水) 22:04:53.53
>>284まで終わりました続けます
2016/01/06(水) 22:21:45.11
フォームの追加は、プロジェクトから追加→新規項目から行う。
モーダルダイアログの表示は次のようなコードになる。
var form2 = new Form2();
form2.ShowDialog(this);
289takasi
垢版 |
2016/01/06(水) 22:24:03.28
質問です>>286ではフォームの最大化、最小化ボタンの無効化をコードで記述していますが
これはフォームデザインのプロパティでFalseを選択してることと同じで記述する必要はありませんよね?
2016/01/06(水) 22:26:13.47
>>289
その通り。それらのプロパティはデザイン時でも実行時でも変更できる。
2016/01/06(水) 22:37:00.92
これを参考に、「ファイルを開く」コモンダイアログを使ってみなさい。
http://www.atmarkit.co.jp/fdotnet/csharptips/007dialog/007dialog.html
292takasi
垢版 |
2016/01/06(水) 22:39:03.61
できましたhttps://i.gyazo.com/93c2d336e20c2cd87d0b537c88108f93.png
難しいコードが記述されてましたが>>288だけで充分だったのですね
続きやります
2016/01/06(水) 23:01:15.03
コモンダイアログはパラメータがたくさんあって大変難易度が高い。
最適なパラメータを選ぶのはプロでも難しい。
294takasi
垢版 |
2016/01/06(水) 23:20:58.46
てっきり新しいフォームを作って、それをコモンダイアログにするかと思い躓いていました
実際はメインフォームの開くスイッチにコード記述するだけで単純でした
https://i.gyazo.com/c245f9138c647884bb84f1c38f2af97f.png
295takasi
垢版 |
2016/01/06(水) 23:22:34.52
お風呂入ってきます
296takasi
垢版 |
2016/01/06(水) 23:27:52.83
ああああああああああ新しいフォームからもできますねこれ
297takasi
垢版 |
2016/01/06(水) 23:31:58.87
ああ、やってみたらコモンダイアログと新しいフォームが2つ立ち上がってしまい失敗ですね
>>294で正しかったです
2016/01/06(水) 23:44:45.61
おやすみなさい
299takasi
垢版 |
2016/01/07(木) 00:35:50.07
ありがとうございましたおやすみなさい
2016/01/07(木) 18:42:04.30
おなようございます
独習か猫でもわかるを買ってきます。
2016/01/07(木) 18:53:19.03
課題。最前面表示のテキストエディタを作れ。
【要件】
・ファイルメニューからテキストファイルが開ける。保存できる。
・複数行のテキストを編集できる。
・フォームのサイズを変えると中のテキストボックスもフィットする。
・常に最前面に表示される。
2016/01/07(木) 19:06:43.87
ReadMe.txtとLicense.txtというファイルを追加すること。
Git for Windowsをインストールせよ。
.gitignoreというファイルを追加して無視すべきファイルを除外するようにしておくこと。
Gitレポジトリとしてコミットせよ。
完成したプログラムはGitHubにアップロードせよ。
ライセンスはNew BSD Licenseとする。
303たかし
垢版 |
2016/01/07(木) 19:50:01.19
おはようございます
猫でもわかるを買ってきました。
帰宅してから始めます
2016/01/07(木) 20:07:21.98
>>302
ちょwなんかいきなり難易度高くなってません?
305takasi
垢版 |
2016/01/07(木) 20:31:18.47
おはようございます今から初めます
306takasi
垢版 |
2016/01/07(木) 20:37:58.91
質問です、VSでプロジェクトが異なるファイルを別のタブで開くことはできますか?
例えばプロジェクト1のAファイルをプロジェクト2の作業中に開くことです。
コード内容を見比べたり参考にしたいのです
開けないとしたら見比べるのに良い方法は有りますか?別のテキストエディタを起動して読み込ませる方法しかないでしょうか
2016/01/07(木) 20:44:25.67
>>306
ファイルメニューの「開く」→「ファイル」で開けるぞ。
ファイルタブを右クリックして、「タブグループの新規作成」で比較ができる。
2016/01/07(木) 20:52:18.61
訂正。
AutoSizeModeはGrowOnlyのままでいい。
2016/01/07(木) 21:01:42.30
GUI項目の名前は、(Name)プロパティで指定できるが、
デザインした後に編集する裏技を紹介しよう。
編集メニューの「検索と置換」→「フォルダを指定して置換」を選んで
「すべて置換」。
プロジェクト名の場合はさらにプロジェクトの「名前の変更」と「プロパティ」、
ファイルメニューの「名前を付けて保存」を行う。
2016/01/07(木) 21:13:56.20
もう気付いてると思うが、変数や関数の名前に日本語が使える。
日本語のGUIについては、英語にこだわる必要はない。
311takasi
垢版 |
2016/01/07(木) 21:25:25.26
質問です。この授業ではネット上にあるオープンの既存のコードをコピペで使用して良いのでしょうか?
もちろん自分なりに添削し改良をしました。
それともコードを1から書かなければいけませんか?今の僕の知識と技術ではコピペしないとできそうにありません
312takasi
垢版 |
2016/01/07(木) 21:27:02.65
コード内容もきちんと読みどういう動作をしているかを考えて使っています
2016/01/07(木) 21:32:17.51
>>311
ライセンス上、著作権上の問題なければ使っても構わない。
中には使用条件のあるコードがあるかもしれないので、気を付けて。
314takasi
垢版 |
2016/01/07(木) 21:35:09.02
ありがとうございます。
>>301の要件のみを満たしたテキストエディタ完成しました
Git for Windowsをインストール中です
2016/01/07(木) 21:35:38.05
誰が書いても同じようになるコードには著作権はない。
アルゴリズムには著作権はない。
短いコードには著作権はない。
316takasi
垢版 |
2016/01/07(木) 21:37:25.25
Git for Windowsが何かもコミットと言葉の意味もワカリマセンがとりあえずやってみます
317takasi
垢版 |
2016/01/07(木) 21:40:15.07
Gitをどのコマンドラインで使うか聞かれたのですが
デフォルトで選択されているGit Bashで良いでしょうか
2016/01/07(木) 21:40:35.79
メールアドレスは持っているか?
GitHubにアップするためにはGitHubでアカウント作成が必要で、
アカウント作成にはメールアドレスが必要だ。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況