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

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

先生!!
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でアカウント作成が必要で、
アカウント作成にはメールアドレスが必要だ。
319takasi
垢版 |
2016/01/07(木) 21:41:06.37
GitHubのアカウント作成してきます
2016/01/07(木) 21:42:44.18
>>317
Git BashでOK。これはLinux風の端末だ。これを使うとLinuxの勉強にもなる。
321takasi
垢版 |
2016/01/07(木) 21:42:46.26
GitHubには学習で作った実用性の無いアプリもアップロードして良いのですか?
ゴミをアップするなとか怒られないでしょうか
2016/01/07(木) 21:50:50.40
>>321
実用性がなくても教育目的で役に立つかもしれない。
全く役に立たないと思ったら、後でprivateにしたり削除したりできる。
今は気にしないでいい。
323takasi
垢版 |
2016/01/07(木) 21:51:01.42
GitHubのアカウント取得、Gitのインストール完了しました
使い方が全くわからず困っています
324takasi
垢版 |
2016/01/07(木) 21:52:47.46
えーまずReadMe.txtとLicense.txtの追加をしたいのですが、これはVSから追加するのでしょうか?
形だけで内容を書かなくても良いでしょうか
2016/01/07(木) 21:53:52.22
まず、プロジェクトフォルダを右クリックしてGit Bashを選ぶ。
次に「git init」を入力する。これでローカルレポジトリができる。
2016/01/07(木) 21:56:44.02
>>324
フォルダのエクスプローラから新規作成で作成する。
ReadMe.txtはプロジェクトの内容を記述する。
License.txtにはNew BSD Licenseを記載する。
327takasi
垢版 |
2016/01/07(木) 21:59:58.37
ローカルレポジトリが何のことか分かりませんが git init しました masterってのが表示されました

フォルダはプロジェクトフォルダの事でしょうか?そのフォルダにReadMe.txtとLicense.txtを作成すれば良いですか?
2016/01/07(木) 22:00:58.60
さらに.gitignoreファイルをテキストエディタなどで作成する。
「C# .gitignore」で検索。
2016/01/07(木) 22:01:43.42
>>327
はい
2016/01/07(木) 22:10:32.40
【メモ帳で.gitignoreを作る方法】
メモ帳に「bin
obj
.vs」と書き込み、
ファイルメニューから名前を付けて保存。
ファイルの種類を「すべてのファイル」に変更。
プロジェクトフォルダに移動して「.gitignore」で保存。
331takasi
垢版 |
2016/01/07(木) 22:14:23.27
ファイル名は何でも良いですか?空白はできないとの警告があります
内容はこれでよいでしょうかhttps://i.gyazo.com/6f9577c12fb35ead09fe5b35865e0850.png
2016/01/07(木) 22:15:02.75
次はレポジトリにファイルを追加する。
Git Bash上で
「git add *.cs *.sln *.csproj *.resx」
「git add .gitignore App.config」
「git add Properties/*」
と入力。
「git status」で追加したファイルを確認。
333takasi
垢版 |
2016/01/07(木) 22:15:28.14
>>330で作り直します
334takasi
垢版 |
2016/01/07(木) 22:16:32.63
>>331全てのファイルから保存を選んだらファイル名無しでも保存できました
2016/01/07(木) 22:17:33.13
>>331
名前を付けて保存のときに二重引用符をつけた「".gitignore"」で試してみなさい。
336takasi
垢版 |
2016/01/07(木) 22:19:49.25
>>332
これでよいでしょうかhttps://i.gyazo.com/de47e6a7b7a2d41b95faaaf86d48118b.png
2016/01/07(木) 22:21:18.27
次はコミットだ。
「git commit -m "first commit"」
その次はGitHubにログインして「New Repository」を作れ。
2016/01/07(木) 22:23:18.36
>>336
untracked filesが追加されてない
339takasi
垢版 |
2016/01/07(木) 22:26:24.19
>>337
できました

>>338
何をすればよいでしょうか?
>>332をもう一度入力しますか?
340takasi
垢版 |
2016/01/07(木) 22:28:19.38
ああ、赤字のファイルが存在しないってことですかね
2016/01/07(木) 22:29:52.65
>>339
「git add (追加したいファイル)」で追加して、
「git commit -m "second commit"」でコミットだ。
できたらGitHubで作った場所をブラウズせよ。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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