!extend:checked:vvvvv:1000:512
次スレを立てる時は↑を2行冒頭に書くこと(1行分は消えて表示されない為)
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください
>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■関連スレ
C#, C♯, C#相談室 Part93
http://mevius.5ch.net/test/read.cgi/tech/1492818720/
■前スレ
ふらっと C#,C♯,C#(初心者用) Part141
http://mevius.5ch.net/test/read.cgi/tech/1544839627/
■コードを貼る場合は↓を使いましょう。
http://ideone.com/
https://dotnetfiddle.net/
■情報源
https://docs.microsoft.com/ja-jp/dotnet/standard/class-libraries
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/index
https://docs.microsoft.com/en-us/dotnet/standard/class-libraries
http://referencesource.microsoft.com/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
ふらっと C#,C♯,C#(初心者用) Part142
■ このスレッドは過去ログ倉庫に格納されています
1名無C ◆jPpg5.obl6 (ワッチョイ 762c-FuHz)
2019/03/07(木) 06:35:41.12ID:6L3KEJfe0754デフォルトの名無しさん (ワッチョイ 1763-ajP6)
2019/05/07(火) 11:59:10.66ID:25JpTCOf0 え、winformはどうなるの??
755デフォルトの名無しさん (アウアウエー Sa3a-kXAv)
2019/05/07(火) 12:06:04.60ID:b+Ix+FO0a 最近のmicrosoftかなり攻めてるな
756デフォルトの名無しさん (ワッチョイ 9b61-ahOC)
2019/05/07(火) 13:10:26.59ID:eYh/lhy30 .net frameworkからcoreなんてどこかちょろっといじったらいいだけじゃないの?
VB6からVB.netほどの変化はないんだろ?
VB6からVB.netほどの変化はないんだろ?
757デフォルトの名無しさん (ドコグロ MM2b-jhVB)
2019/05/07(火) 13:37:50.62ID:9iRY6hHtM758デフォルトの名無しさん (ワッチョイ 1f12-7dwh)
2019/05/07(火) 13:46:35.16ID:9CwYXDcE0 別に移行しなくてもいいですけど保守には特別料金いただきまっせ
759デフォルトの名無しさん (スップ Sd22-JiSW)
2019/05/07(火) 13:47:55.21ID:Q8AOfbVkd >>756
Web FormsはほぼUI作り直し
Web FormsはほぼUI作り直し
760デフォルトの名無しさん (ドコグロ MM2b-jhVB)
2019/05/07(火) 13:50:03.67ID:9iRY6hHtM あと技術的な最大の障害はWebFormsだろう
WebFormsは.NET Coreではサポートされてないし、される気配もない
既存資産の移行もさることながら、.NETドカタはWebForms頼りで標準的なWeb開発のスキルを持たない奴も多い
彼らはWebアプリケーションの開発が不可能になり、路頭に迷うことになる
WebFormsは.NET Coreではサポートされてないし、される気配もない
既存資産の移行もさることながら、.NETドカタはWebForms頼りで標準的なWeb開発のスキルを持たない奴も多い
彼らはWebアプリケーションの開発が不可能になり、路頭に迷うことになる
761デフォルトの名無しさん (ワッチョイ f72d-/hjB)
2019/05/07(火) 17:00:19.52ID:1tK/VkfG0 すまんが、Stream型って前の方だけメモリを解放するとか器用なことは出来ないの?
762デフォルトの名無しさん (ドコグロ MM2b-jhVB)
2019/05/07(火) 19:17:09.01ID:9iRY6hHtM763デフォルトの名無しさん (ワッチョイ 9b61-oppc)
2019/05/07(火) 19:23:08.04ID:VnMa5nf90 Stream型ってなんか確保してんの?
764デフォルトの名無しさん (ラクッペ MMaf-7dwh)
2019/05/07(火) 19:29:05.20ID:n4vre8LhM Streamの実装によるだろ
765デフォルトの名無しさん (ワッチョイ cb5f-51S+)
2019/05/07(火) 21:03:30.48ID:FJj2rymy0766デフォルトの名無しさん (アウアウカー Sa47-V/oy)
2019/05/08(水) 21:27:25.44ID:4kxgmlsqa C#でwindowsPCのマイク音量設定を設けたアプリを作りたいんですが情報がいまいち出てきません
今現在どのような方法が推奨として使われているのでしょうか
今現在どのような方法が推奨として使われているのでしょうか
767デフォルトの名無しさん (ブーイモ MM02-R0y6)
2019/05/08(水) 21:33:29.28ID:UPhx/0uCM おとなしくNAudioと言うのを使いなさい
768デフォルトの名無しさん (アウアウカー Saeb-8Yy7)
2019/05/09(木) 20:00:37.76ID:25KQckNoa769デフォルトの名無しさん (ワッチョイ bffc-ESYi)
2019/05/10(金) 07:09:33.41ID:8h0VP8xa0 RPgエディタみたいなタイルマップを配置する機能を作る場合、画像を配置するフォームは何が適切でしょうか?
前にも聞いた気がするんですが、レスを忘れてしまって、、、
前にも聞いた気がするんですが、レスを忘れてしまって、、、
770デフォルトの名無しさん (ドコグロ MMdf-wbL8)
2019/05/10(金) 07:45:25.60ID:guXEw79XM モデリングソフトに決まってんじゃん
2Dでもプラグインあるからプロならモデリングソフト
個人製作ならエクセルで代用しとけ
ってスレ違うやん
2Dでもプラグインあるからプロならモデリングソフト
個人製作ならエクセルで代用しとけ
ってスレ違うやん
771デフォルトの名無しさん (ドコグロ MMdf-wbL8)
2019/05/10(金) 07:46:35.31ID:guXEw79XM いや、すまん、質問内容取り違えてたw
ピクチャーボックスで
ピクチャーボックスで
772デフォルトの名無しさん (スププ Sdbf-rOSl)
2019/05/10(金) 08:14:45.00ID:uov0WiW1d >>769
Panelを継承したカスタムコントロールのOnPaint内で描画する事だな
Panelを継承したカスタムコントロールのOnPaint内で描画する事だな
773デフォルトの名無しさん (ワッチョイ bffc-ESYi)
2019/05/10(金) 12:26:08.70ID:8h0VP8xa0774デフォルトの名無しさん (ワッチョイ 577b-5AMV)
2019/05/10(金) 17:41:55.34ID:ZtjlRqB/0775デフォルトの名無しさん (ワッチョイ bffc-ESYi)
2019/05/10(金) 18:53:28.94ID:8h0VP8xa0 visual studioのhddへのアクセスは制限できますか?
激重です
SSDにしろって話ですけどね
激重です
SSDにしろって話ですけどね
776デフォルトの名無しさん (ワッチョイ bffc-ESYi)
2019/05/10(金) 19:04:05.18ID:8h0VP8xa0777デフォルトの名無しさん (ドコグロ MMdf-nP+x)
2019/05/10(金) 19:28:03.03ID:tfYAY6pzM >>776
どっちでもいいよ
どのみち今の君のレベルで作ってもまともに使い物になるようなものにはならないから、うだうだ考えるより手の届く範囲で経験値を積んだ方がいい
行き詰まる頃にはだいぶレベルが上がってるはずだから、また作り直す
三周目くらいになればまともに作れるようになってるよ
どっちでもいいよ
どのみち今の君のレベルで作ってもまともに使い物になるようなものにはならないから、うだうだ考えるより手の届く範囲で経験値を積んだ方がいい
行き詰まる頃にはだいぶレベルが上がってるはずだから、また作り直す
三周目くらいになればまともに作れるようになってるよ
778デフォルトの名無しさん (ワッチョイ d788-0pSk)
2019/05/10(金) 19:30:30.41ID:uRQk/IXU0 3週でいけるのだろうか?
779デフォルトの名無しさん (ワッチョイ d768-Lzly)
2019/05/11(土) 12:14:17.95ID:kDrnBD/r0 低レベルな質問で申し訳ないのですが、循環バッファって凄い便利だから
全ての配列は循環バッファで実装すればいいと思うのですが、デメリットはあるんでしょうか?
Delete
Insert
Add
が全てO(1)で出来るって凄くないですか?
全ての配列は循環バッファで実装すればいいと思うのですが、デメリットはあるんでしょうか?
Delete
Insert
Add
が全てO(1)で出来るって凄くないですか?
780デフォルトの名無しさん (ドコグロ MMdf-wbL8)
2019/05/11(土) 12:25:39.14ID:E3skkYkSM781デフォルトの名無しさん (ラクッペ MM9b-S7ow)
2019/05/11(土) 12:30:42.30ID:qR2J3ArJM 下手の考えなんとかつってなー
高レベルになってから言ってくれ
高レベルになってから言ってくれ
782デフォルトの名無しさん (ワッチョイ 375f-4N0r)
2019/05/11(土) 12:39:31.51ID:td9YBJ3L0783デフォルトの名無しさん (ワッチョイ b7da-XzN3)
2019/05/11(土) 12:56:33.31ID:4CcYolMU0784デフォルトの名無しさん (アウアウエー Sadf-HRFV)
2019/05/11(土) 12:59:31.48ID:aDjFJI/sa >>779
Addは、reallocationを考慮しても償却定数時間で出来そうだが
Delete, InsertがO(1)だというソースをくれ、「末尾」という指定がない以上任意位置だよな?
途中要素をDelete,Insertしたら要素の詰め直しが必要でO(N)になると思うんだが
O(N)になるならList<T>で十分という話になる
Addは、reallocationを考慮しても償却定数時間で出来そうだが
Delete, InsertがO(1)だというソースをくれ、「末尾」という指定がない以上任意位置だよな?
途中要素をDelete,Insertしたら要素の詰め直しが必要でO(N)になると思うんだが
O(N)になるならList<T>で十分という話になる
785デフォルトの名無しさん (ワッチョイ 7f7c-Or+L)
2019/05/11(土) 13:05:46.01ID:DR+jkhoz0786デフォルトの名無しさん (アウアウエー Sadf-HRFV)
2019/05/11(土) 13:06:24.02ID:aDjFJI/sa 考え直したらQueueやStackのことを言っている気がしてきた
それらのデータ構造がもうあるんだからそれ使えば良いんじゃね
それらのデータ構造がもうあるんだからそれ使えば良いんじゃね
787デフォルトの名無しさん (ワッチョイ b738-g1xP)
2019/05/11(土) 15:39:49.17ID:8cYUuN//0 すべての配列は〜というのが考え方が
そもそも乱暴で
目的に合わせてデータ構造を選ぶものじゃ
そもそも乱暴で
目的に合わせてデータ構造を選ぶものじゃ
788デフォルトの名無しさん (ワッチョイ 972c-vVMj)
2019/05/11(土) 16:14:40.10ID:MBpEq5nf0 Visual C#で電卓を作ってます。
ある数字ボタンをクリックしたとき、(Button)sender).TextでTextran欄の文字を取得できますが
クリックではなく、キーボード入力で同様にしたいのですが、どうすればできますか?
ある数字ボタンをクリックしたとき、(Button)sender).TextでTextran欄の文字を取得できますが
クリックではなく、キーボード入力で同様にしたいのですが、どうすればできますか?
789デフォルトの名無しさん (ワッチョイ 577b-5AMV)
2019/05/11(土) 16:26:29.83ID:VR7g318H0 >>788
KeyPressやKeyDownなどのイベント
ただし該当するコントロールにFocusされてないと反応しないのでフォームで全部受けるようにするとはかどる
https://dobon.net/vb/dotnet/form/keypreview.html
KeyPressやKeyDownなどのイベント
ただし該当するコントロールにFocusされてないと反応しないのでフォームで全部受けるようにするとはかどる
https://dobon.net/vb/dotnet/form/keypreview.html
790デフォルトの名無しさん (ワッチョイ bffc-ESYi)
2019/05/11(土) 17:24:06.36ID:qy13k0f30 System.Drawing.Bitmap bmp = new System.Drawing.Bitmap(@"C:\Users\◎◎\Desktop\volly.gif");
this.pictureBox1.Image = bmp;
パスについてなのですが、相対パスは使えないということがあるんでしょうか。相対パスだとパラメータが違うというエラーが出ます。
フォームアプリケーションなので、form1.csにコードを書いています
form1.cs
img(フォルダ)
└volly.gif
という構造になっています
しかし、img\volly.gif
だとエラーになります
何が悪いでしょうか。
this.pictureBox1.Image = bmp;
パスについてなのですが、相対パスは使えないということがあるんでしょうか。相対パスだとパラメータが違うというエラーが出ます。
フォームアプリケーションなので、form1.csにコードを書いています
form1.cs
img(フォルダ)
└volly.gif
という構造になっています
しかし、img\volly.gif
だとエラーになります
何が悪いでしょうか。
791デフォルトの名無しさん (ワッチョイ ffe3-y0Vo)
2019/05/11(土) 17:26:35.03ID:Q2bK8ZXg0 >>790
.\img\volly.gifじゃね?
.\img\volly.gifじゃね?
792デフォルトの名無しさん (ワッチョイ 375f-BD3m)
2019/05/11(土) 17:31:33.00ID:vfaLavs00 実行時のカレントフォルダーが合ってないと思う
793デフォルトの名無しさん (ワッチョイ 9f2c-Ounp)
2019/05/11(土) 17:56:52.10ID:lpN0Lm9o0 デバッガでブレイクしてイミディエイトウィンドウとかで
Environment.CurrentDirectory確認すると良いよ
Environment.CurrentDirectory確認すると良いよ
794デフォルトの名無しさん (アウアウウー Sa1b-vVMj)
2019/05/11(土) 18:25:33.06ID:dxU2Wm5sa795デフォルトの名無しさん (ワッチョイ 577b-5AMV)
2019/05/11(土) 18:56:38.28ID:VR7g318H0796デフォルトの名無しさん (ワッチョイ 375f-BD3m)
2019/05/11(土) 19:09:02.07ID:vfaLavs00 >>795
> 相対パスはソースファイルの位置からじゃなく実行ファイルの位置から作られる
これは正しくないよ。その時のカレントフォルダが基準。
何もしていなければ多くの場合は実行ファイルの場所と一致するから、結果としてそうなることが多いけど。
> 相対パスはソースファイルの位置からじゃなく実行ファイルの位置から作られる
これは正しくないよ。その時のカレントフォルダが基準。
何もしていなければ多くの場合は実行ファイルの場所と一致するから、結果としてそうなることが多いけど。
797デフォルトの名無しさん (ワッチョイ 577b-5AMV)
2019/05/11(土) 19:52:49.57ID:VR7g318H0 >>796
それならexeと同じディレクトリのところから使うには
System.IO.Path.GetDirectoryName(Application.ExecutablePath)とか使って必ず絶対パスに直さないと危ないってことか
それならexeと同じディレクトリのところから使うには
System.IO.Path.GetDirectoryName(Application.ExecutablePath)とか使って必ず絶対パスに直さないと危ないってことか
798デフォルトの名無しさん (ワッチョイ bffc-ESYi)
2019/05/12(日) 10:29:51.59ID:zQc98Y8H0 Console.WriteLine(System.Environment.CurrentDirectory);
としても出力には何も出てこないのですか?
出てこないです
作業フォルダっていうのはform1.csとは別のファイルのことなんですね
としても出力には何も出てこないのですか?
出てこないです
作業フォルダっていうのはform1.csとは別のファイルのことなんですね
799デフォルトの名無しさん (ワッチョイ b738-g1xP)
2019/05/12(日) 10:48:00.86ID:NzWVi3Qm0 console覗くか
traceあたりに出力しないとでは
traceあたりに出力しないとでは
800デフォルトの名無しさん (ワッチョイ bffc-ESYi)
2019/05/12(日) 10:52:27.58ID:zQc98Y8H0 おっ いけました
'2d_engine.exe' (CLR v4.0.30319: 2d_engine.exe): 'C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\mscorlib.resources\v4.0_4.0.0.0_ja_b77a5c561934e089\mscorlib.resources.dll' が読み込まれました。モジュールがシンボルなしでビルドされました。
これで正しいのかわからないですが、なんで実行ファイルがこんな場所にあるんでしょうか。プロジェクト内にあるのかと思ってましたが
'2d_engine.exe' (CLR v4.0.30319: 2d_engine.exe): 'C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\mscorlib.resources\v4.0_4.0.0.0_ja_b77a5c561934e089\mscorlib.resources.dll' が読み込まれました。モジュールがシンボルなしでビルドされました。
これで正しいのかわからないですが、なんで実行ファイルがこんな場所にあるんでしょうか。プロジェクト内にあるのかと思ってましたが
801デフォルトの名無しさん (ワッチョイ 375f-BD3m)
2019/05/12(日) 10:53:02.25ID:M17KJIhd0802デフォルトの名無しさん (ワッチョイ b738-g1xP)
2019/05/12(日) 11:02:52.23ID:NzWVi3Qm0 謎は解けた
803デフォルトの名無しさん (ワッチョイ ff7b-t4ir)
2019/05/12(日) 11:03:02.94ID:PIRDu/CH0804デフォルトの名無しさん (ブーイモ MMbf-vVMj)
2019/05/12(日) 11:04:19.53ID:JwWGS0EoM 空のコンソールアプリ作ってそこで実行して
805デフォルトの名無しさん (ブーイモ MMbf-vVMj)
2019/05/12(日) 11:06:21.31ID:JwWGS0EoM そのgifファイルは実行ファイルが作られた場所に自動でコピーされてないので
コピーされるようにgifファイルの設定帰るしかない
コピーされるようにgifファイルの設定帰るしかない
806デフォルトの名無しさん (ワッチョイ 375f-BD3m)
2019/05/12(日) 11:08:55.17ID:M17KJIhd0807デフォルトの名無しさん (ワッチョイ 9f47-rOSl)
2019/05/12(日) 11:35:01.56ID:1UlYWsgm0808デフォルトの名無しさん (ワッチョイ b7da-XzN3)
2019/05/12(日) 11:42:27.50ID:Zs5BDDrj0 AllocConsole() してみなされ
809デフォルトの名無しさん (ワッチョイ 9f52-tfUF)
2019/05/12(日) 11:46:33.54ID:7nn+3/Jt0 >>800
プログラムの実行ファイルがある場所とは別に、プログラムの実行時に「どのフォルダでプログラムを実行するか」という概念があるのは分かる?
プログラムの実行ファイルがある場所とは別に、プログラムの実行時に「どのフォルダでプログラムを実行するか」という概念があるのは分かる?
810デフォルトの名無しさん (ワッチョイ ff7b-t4ir)
2019/05/12(日) 11:49:29.62ID:PIRDu/CH0 先生多すぎて混乱してそうw
811デフォルトの名無しさん (ワッチョイ bffc-ESYi)
2019/05/12(日) 13:55:38.46ID:zQc98Y8H0 混乱してるんで一度整理します
812デフォルトの名無しさん (ワッチョイ ff7b-t4ir)
2019/05/12(日) 14:13:47.11ID:PIRDu/CH0 そもそもカレントディレクトリを表示させる必要があるのか?
画像をPictureBoxに表示するのが目的じゃなかったのか
画像をPictureBoxに表示するのが目的じゃなかったのか
813デフォルトの名無しさん (ワッチョイ bffc-ESYi)
2019/05/12(日) 15:18:28.27ID:zQc98Y8H0 そうなんですが、そのために相対パスを設定したいんです
絶対パスでも別に不自由しないですが、ソフトを作るときは相対パスも使うと思うので
絶対パスでも別に不自由しないですが、ソフトを作るときは相対パスも使うと思うので
814デフォルトの名無しさん (ワッチョイ 7f02-AZoQ)
2019/05/12(日) 15:40:46.00ID:Q+XtJRAz0 >>790
VisualStudioでF5実行やデバッグをすると(何も設定を変えてなければ)ビルド出力先がカレントディレクトリになる
相対パスでエラーになる原因はビルド出力先にimg\volly.gifが存在しないから
なのでimg\volly.gifをビルド出力先にコピーしてやれば相対パスで読み込めるようになる
プロジェクトエクスプローラーでimg\volly.gifを右クリックしてプロパティを開いて
「ビルド時のアクション」を「なし」に変更
「出力ディレクトリにコピー」を「新しい場合はコピーする」に変更
これでビルドすると出力先フォルダにimg\volly.gifがコピーされるようになる
VisualStudioでF5実行やデバッグをすると(何も設定を変えてなければ)ビルド出力先がカレントディレクトリになる
相対パスでエラーになる原因はビルド出力先にimg\volly.gifが存在しないから
なのでimg\volly.gifをビルド出力先にコピーしてやれば相対パスで読み込めるようになる
プロジェクトエクスプローラーでimg\volly.gifを右クリックしてプロパティを開いて
「ビルド時のアクション」を「なし」に変更
「出力ディレクトリにコピー」を「新しい場合はコピーする」に変更
これでビルドすると出力先フォルダにimg\volly.gifがコピーされるようになる
815デフォルトの名無しさん (ワッチョイ b761-wbL8)
2019/05/12(日) 15:41:40.00ID:CayLEbz10 >>813
実は業務ではカレントディレクトリをあてにした動作はさせない
なぜなら制御できないから
なので相対パスをプログラムで取得したら
自分が基準とするディレクトリパスと自力で連結させて絶対パスにして使う
実は業務ではカレントディレクトリをあてにした動作はさせない
なぜなら制御できないから
なので相対パスをプログラムで取得したら
自分が基準とするディレクトリパスと自力で連結させて絶対パスにして使う
816デフォルトの名無しさん (ワッチョイ 7f02-AZoQ)
2019/05/12(日) 15:43:12.88ID:Q+XtJRAz0 画像ファイルがたくさんあって1こ1こ設定するのがめんどくさい場合は
imgフォルダを右クリックして同じようにコピーの設定をする
そうすれば1つの設定でフォルダごとまるごとコピーしてくれる
imgフォルダを右クリックして同じようにコピーの設定をする
そうすれば1つの設定でフォルダごとまるごとコピーしてくれる
817デフォルトの名無しさん (アウアウエー Sadf-MyDy)
2019/05/12(日) 15:54:06.76ID:0iYfvooEa まあ、そもそも特に理由がなければ画像ファイルはリソースに突っ込むべきだね。
どうしても生の画像ファイルを使いたいならソリューションエクスプローラーからプロジェクトに追加して
プロパティウィンドウの「出力ディレクトリにコピー」の値を「常にコピーする」にすれば
ビルトすると自動的に実行ファイルと同じディレクトリにコピーされるようになる。
ディレクトリの階層を作りたいならソリューションエクスプローラ上で階層を作れば
それがそのまま反映されてコピーされる。
実行ファイルのディレクトリはこれで
https://docs.microsoft.com/ja-jp/dotnet/api/system.windows.forms.application.startuppath
どうしても生の画像ファイルを使いたいならソリューションエクスプローラーからプロジェクトに追加して
プロパティウィンドウの「出力ディレクトリにコピー」の値を「常にコピーする」にすれば
ビルトすると自動的に実行ファイルと同じディレクトリにコピーされるようになる。
ディレクトリの階層を作りたいならソリューションエクスプローラ上で階層を作れば
それがそのまま反映されてコピーされる。
実行ファイルのディレクトリはこれで
https://docs.microsoft.com/ja-jp/dotnet/api/system.windows.forms.application.startuppath
818デフォルトの名無しさん (アウアウエー Sadf-HRFV)
2019/05/12(日) 16:00:55.91ID:xH15WcK+a OpenFileDialogなどを使うだけでカレントディレクトリは変わるし
EXEのショートカット経由で起動する場合は任意のカレントディレクトリ位置に出来るし
他プロセスからWorkingDirectory設定無しで起動される場合も考えたりすると
プログラム中で内部的に相対パスを保持するのは構わないけど
IO系APIを呼び出す時は、AppDomain.BaseDirectoryなどと結合して絶対パスにしてから渡したほうがいい
EXEのショートカット経由で起動する場合は任意のカレントディレクトリ位置に出来るし
他プロセスからWorkingDirectory設定無しで起動される場合も考えたりすると
プログラム中で内部的に相対パスを保持するのは構わないけど
IO系APIを呼び出す時は、AppDomain.BaseDirectoryなどと結合して絶対パスにしてから渡したほうがいい
819デフォルトの名無しさん (ワッチョイ bffc-ESYi)
2019/05/12(日) 16:17:07.77ID:zQc98Y8H0 なるほど
自分で絶対パスを1つ決めて、そこを起点にすると
自分で絶対パスを1つ決めて、そこを起点にすると
820デフォルトの名無しさん (ワッチョイ bffc-ESYi)
2019/05/12(日) 17:07:03.34ID:zQc98Y8H0 関係ないんですけど、コードってどこに保存してますか?
普通にテキストエディタに保存してますけど
普通にテキストエディタに保存してますけど
821デフォルトの名無しさん (ワッチョイ b7da-XzN3)
2019/05/12(日) 17:15:13.31ID:Zs5BDDrj0 大事な物は心の中に
822デフォルトの名無しさん (ドコグロ MMdf-nP+x)
2019/05/12(日) 17:22:08.37ID:O1RPDIWFM >>820
一般的にはGitを使ってGitHubで管理する
だけど今の君のレベルではそんなのは必要ない
今の君のレベルで書いたコードなんて一ヶ月後にはゴミであり、大切に保存する価値などない
一ヶ月後のレベルの上がった君から見ればゴミだという意味であり、決して悪い意味じゃないから勘違いするなよ
一般的にはGitを使ってGitHubで管理する
だけど今の君のレベルではそんなのは必要ない
今の君のレベルで書いたコードなんて一ヶ月後にはゴミであり、大切に保存する価値などない
一ヶ月後のレベルの上がった君から見ればゴミだという意味であり、決して悪い意味じゃないから勘違いするなよ
823デフォルトの名無しさん (ワッチョイ bffc-ESYi)
2019/05/12(日) 17:25:13.38ID:zQc98Y8H0 自分の環境の場合、プロジェクトフォルダ\bin\debug\hoge.exe
という場所に実行ファイルが作られるようです
Cフォルダの直下あたりに作られるという説明がされちえますが、何か間違ってますかね
//カレントディレクトリの取得
MessageBox.Show(System.IO.Directory.GetCurrentDirectory());
場所ってのは自動的に決まる感じですか
という場所に実行ファイルが作られるようです
Cフォルダの直下あたりに作られるという説明がされちえますが、何か間違ってますかね
//カレントディレクトリの取得
MessageBox.Show(System.IO.Directory.GetCurrentDirectory());
場所ってのは自動的に決まる感じですか
824デフォルトの名無しさん (アウアウエー Sadf-MyDy)
2019/05/12(日) 18:06:37.88ID:hmzYcUWua825デフォルトの名無しさん (スププ Sdbf-rOSl)
2019/05/12(日) 18:42:19.48ID:Mxa5Iz6jd >>822
gitサーバーはいろいろ使われてるのにGitHubが一般的は言いすぎだろw
gitサーバーはいろいろ使われてるのにGitHubが一般的は言いすぎだろw
826デフォルトの名無しさん (ブーイモ MMbf-vVMj)
2019/05/12(日) 18:49:55.29ID:JwWGS0EoM この人はソースをテキストエディタに保存していると言ってるから
iOS使いなんだろうなと思う
iOS使いなんだろうなと思う
827デフォルトの名無しさん (スッップ Sdbf-0pSk)
2019/05/12(日) 19:28:54.08ID:eC5ErjVyd 壮大な計画立てて時間だけがかかって何も完成させられない典型的な例
828デフォルトの名無しさん (ワッチョイ bffc-ESYi)
2019/05/12(日) 19:36:30.99ID:zQc98Y8H0 すみません
がんばります
がんばります
829デフォルトの名無しさん (ワッチョイ 576e-ESYi)
2019/05/12(日) 22:05:40.63ID:TmkC4DiT0 LINQ勉強しててよくわかんないんですけど範囲変数ってあれ事前に宣言しなくていいんですか?
マイクロソフトのサンプルとか見ても例えばselect score in scoresとか出てきてscoreどこから出てきたってなるんですけど
全体的な印象ですけど、SQLはちょろっとかじったので列名無いのにSQLっぽく書いてるLINQってなんかしっくりこないんですよね……
マイクロソフトのサンプルとか見ても例えばselect score in scoresとか出てきてscoreどこから出てきたってなるんですけど
全体的な印象ですけど、SQLはちょろっとかじったので列名無いのにSQLっぽく書いてるLINQってなんかしっくりこないんですよね……
830デフォルトの名無しさん (ワッチョイ ffda-y0Vo)
2019/05/12(日) 22:31:12.34ID:RcOwQ/d80 >>829
Linqはクエリ式よりメソッド構文の方がとっつきやすい。
クエリ式はSQLに似てるけど、C#の文法に照らすと異質だしな
scores.Select(score => ・・・);
scoreはどこから出てきたの?ってことならまずはラムダ式からじゃないかな
Linqはクエリ式よりメソッド構文の方がとっつきやすい。
クエリ式はSQLに似てるけど、C#の文法に照らすと異質だしな
scores.Select(score => ・・・);
scoreはどこから出てきたの?ってことならまずはラムダ式からじゃないかな
831デフォルトの名無しさん (ワッチョイ 9f2c-Ounp)
2019/05/12(日) 22:31:33.06ID:5S2KiOuR0 まずLINQとクエリ構文は別物だぞ
> select score in scores
select句はクエリ構文の最後に抽出するものを指定するんだからこんなのはあり得ない
select句じゃなくてfrom句だろう
scoreはそのクエリ構文内で使うローカル変数的なものなんだからクエリ構文内で出てくるのが当たり前
列名が無いってのは単に数値の配列とか相手にしてるからじゃね
SQLは二次元相手にしか使わないがLINQ/クエリ構文は1次元相手にも使えるからな
scoresがclass Score { public string Name; public int Value; }の配列とかなら
from score in scores
select score.Value
みたいに「列名」が出てくる
あと重要なことだが、クエリ構文は使いどころがあんまり無い
基本的にLINQには拡張メソッドを使う
> select score in scores
select句はクエリ構文の最後に抽出するものを指定するんだからこんなのはあり得ない
select句じゃなくてfrom句だろう
scoreはそのクエリ構文内で使うローカル変数的なものなんだからクエリ構文内で出てくるのが当たり前
列名が無いってのは単に数値の配列とか相手にしてるからじゃね
SQLは二次元相手にしか使わないがLINQ/クエリ構文は1次元相手にも使えるからな
scoresがclass Score { public string Name; public int Value; }の配列とかなら
from score in scores
select score.Value
みたいに「列名」が出てくる
あと重要なことだが、クエリ構文は使いどころがあんまり無い
基本的にLINQには拡張メソッドを使う
832デフォルトの名無しさん (ワッチョイ 9fad-Vuiq)
2019/05/12(日) 22:32:12.36ID:tDx5/mlf0 >>829
メソッド式使えよ
メソッド式使えよ
833デフォルトの名無しさん (ワッチョイ 9fad-Vuiq)
2019/05/12(日) 22:33:30.63ID:tDx5/mlf0 SQLでもテーブルの別名使ったりするやろ
834入門者 (ワッチョイ 9fad-vM1y)
2019/05/13(月) 07:59:49.56ID:W1wujo120 https://ideone.com/mKdtnM
独習C#のコードなんですが170行目のshapes[i].Nameは何故実行出来てるのでしょうか?
Nameプロパティには何も記述がないのですが・・
独習C#のコードなんですが170行目のshapes[i].Nameは何故実行出来てるのでしょうか?
Nameプロパティには何も記述がないのですが・・
835デフォルトの名無しさん (アウアウエー Sadf-nP+x)
2019/05/13(月) 08:25:11.57ID:mnyzhKg9a836デフォルトの名無しさん (ワッチョイ ffda-y0Vo)
2019/05/13(月) 08:29:59.30ID:V/EVdZRD0 >>834
それを学ぶのがその章の目的じゃないの?
Nameプロパティの定義は71行目
163行目のshapes[0].Nameは引数で指定された"right"がセットされる。
164行目のshapes[1].Nameは省略時引数により139行目のコンストラクタを経由して"rectangle"がセットされる。
165行目のshapes[2].Nameは省略時引数により134行目のコンストラクタを経由して"rectangle"がセットされる。
166行目のshapes[3].Nameは省略時引数により106行目のコンストラクタを経由して"trizngle"がセットされる。
それを学ぶのがその章の目的じゃないの?
Nameプロパティの定義は71行目
163行目のshapes[0].Nameは引数で指定された"right"がセットされる。
164行目のshapes[1].Nameは省略時引数により139行目のコンストラクタを経由して"rectangle"がセットされる。
165行目のshapes[2].Nameは省略時引数により134行目のコンストラクタを経由して"rectangle"がセットされる。
166行目のshapes[3].Nameは省略時引数により106行目のコンストラクタを経由して"trizngle"がセットされる。
837入門者 (ワッチョイ 9fad-vM1y)
2019/05/13(月) 08:34:33.58ID:W1wujo120838デフォルトの名無しさん (ワッチョイ 7f7c-lLD7)
2019/05/13(月) 08:52:41.32ID:VAfV6Qs50 public string Hoge { get; set; }
は
private string _Hoge;
public string Hoge { get { return this._Hoge; } set { this._Hoge = value; } }
の省略構文みたいな感じになる
(実際にはこの_HogeはC#からアクセスできない名前にコンパイルされる)
は
private string _Hoge;
public string Hoge { get { return this._Hoge; } set { this._Hoge = value; } }
の省略構文みたいな感じになる
(実際にはこの_HogeはC#からアクセスできない名前にコンパイルされる)
839デフォルトの名無しさん (ワッチョイ 375f-BD3m)
2019/05/13(月) 08:57:28.04ID:WhpQbL/L0840デフォルトの名無しさん (JP 0H4f-vM1y)
2019/05/13(月) 10:05:53.21ID:yzhNtOt8H ありがとうございました
>>831
https://docs.microsoft.com/ja-jp/dotnet/csharp/linq/query-expression-basics
そうですねfromの間違いでした失礼しました
「scoreはそのクエリ構文内で使うローカル変数的なもの」ってのは割としっくり来ました
「LINQ/クエリ構文は1次元相手にも使える」SQLとは全くの別物と考えて頭からっぽにして勉強しなおしたほうがよさそうですね
>>831
https://docs.microsoft.com/ja-jp/dotnet/csharp/linq/query-expression-basics
そうですねfromの間違いでした失礼しました
「scoreはそのクエリ構文内で使うローカル変数的なもの」ってのは割としっくり来ました
「LINQ/クエリ構文は1次元相手にも使える」SQLとは全くの別物と考えて頭からっぽにして勉強しなおしたほうがよさそうですね
841デフォルトの名無しさん (ワッチョイ bffc-ESYi)
2019/05/13(月) 15:49:43.81ID:d2gOVbtC0 vsを軽くするセッティングはないでしょうか?
重くなる原因はhddへのアクセスが100になってしまうからです
SSDはないです
重くなる原因はhddへのアクセスが100になってしまうからです
SSDはないです
842デフォルトの名無しさん (ワッチョイ 9f40-BD3m)
2019/05/13(月) 16:02:30.23ID:UKQBojaO0 object 型の変数 x に int 型にキャストできる型(short 型や byte 型など)の値が代入されているときに
その値を int 型にキャストしたいのですが、(int)x とすると InvalidCastException が投げられてしまいます。
x に代入されている値が例えば short 型だと分かっているなら (int)(short)x でうまくいくのですが、
この方法だといちいち値の型を調べる必要があるのでもっとスマートな方法があれば教えていただきたいです。
一応自分でも考えてみたところ int.Parse(x.ToString()) なら x の型によらずうまくいったのですが、
値の変換をするだけなのに文字列を経由するのはすごく無駄なことをしているような気がします。
よろしくお願いいたします。
その値を int 型にキャストしたいのですが、(int)x とすると InvalidCastException が投げられてしまいます。
x に代入されている値が例えば short 型だと分かっているなら (int)(short)x でうまくいくのですが、
この方法だといちいち値の型を調べる必要があるのでもっとスマートな方法があれば教えていただきたいです。
一応自分でも考えてみたところ int.Parse(x.ToString()) なら x の型によらずうまくいったのですが、
値の変換をするだけなのに文字列を経由するのはすごく無駄なことをしているような気がします。
よろしくお願いいたします。
843デフォルトの名無しさん (ワッチョイ bffc-ESYi)
2019/05/13(月) 16:05:08.31ID:d2gOVbtC0 private void Form1_Load(object sender, EventArgs e)
{
var but = new System.Windows.Forms.Button();
but.Name = "button1";
but.Text = "押せ";
but.Location = new Point(0, 0);
but.Size = new System.Drawing.Size(80, 20);
Controls.Add(but);
}
コードでコントロールを追加したいのですが、ボタンは追加されませんでした
エラーでも出てくれればいいんですが、エラーは出ません
エラーは出ないけど、思い通りに動かない場合、何をヒントにしたらいいでしょうか
{
var but = new System.Windows.Forms.Button();
but.Name = "button1";
but.Text = "押せ";
but.Location = new Point(0, 0);
but.Size = new System.Drawing.Size(80, 20);
Controls.Add(but);
}
コードでコントロールを追加したいのですが、ボタンは追加されませんでした
エラーでも出てくれればいいんですが、エラーは出ません
エラーは出ないけど、思い通りに動かない場合、何をヒントにしたらいいでしょうか
844デフォルトの名無しさん (スッップ Sdbf-0pSk)
2019/05/13(月) 16:07:12.88ID:XGLfyuuud ググりゃいくらでも記事出てくるやんけ
そいつらは試したの?
自身の環境も書かない、何を試したかも書かない、知識不足なのに勝手に要因を決めつける
初めて質問するならまだしも散々してきといてそれ?
そいつらは試したの?
自身の環境も書かない、何を試したかも書かない、知識不足なのに勝手に要因を決めつける
初めて質問するならまだしも散々してきといてそれ?
845デフォルトの名無しさん (スッップ Sdbf-0pSk)
2019/05/13(月) 16:08:41.09ID:XGLfyuuud >>844
841に対して
841に対して
846デフォルトの名無しさん (ワッチョイ bffc-ESYi)
2019/05/13(月) 16:14:20.97ID:d2gOVbtC0 出てきました
場所が悪かったようです
ごめんなさい
場所が悪かったようです
ごめんなさい
847デフォルトの名無しさん (ワッチョイ 9f40-BD3m)
2019/05/13(月) 16:14:45.92ID:UKQBojaO0 >>843
そのコードをコピペして試してみたら私の方では問題なく表示されました。
そちらでうまくいかない原因は
・Form1_Load が呼び出されていない
・追加したボタンの上に別のコントロールが重なってしまっている
あたりではないでしょうか。
とりあえず Form1_Load が呼び出されているかどうかを確認するために
Form1_Load の最後に
MessageBox.Show("呼び出されてるよ"); を追加してみて、
メッセージボックスが表示されるかどうかを確認されてみてはいかがでしょうか。
そのコードをコピペして試してみたら私の方では問題なく表示されました。
そちらでうまくいかない原因は
・Form1_Load が呼び出されていない
・追加したボタンの上に別のコントロールが重なってしまっている
あたりではないでしょうか。
とりあえず Form1_Load が呼び出されているかどうかを確認するために
Form1_Load の最後に
MessageBox.Show("呼び出されてるよ"); を追加してみて、
メッセージボックスが表示されるかどうかを確認されてみてはいかがでしょうか。
848デフォルトの名無しさん (ワッチョイ bffc-ESYi)
2019/05/13(月) 16:15:55.94ID:d2gOVbtC0849デフォルトの名無しさん (ワッチョイ bffc-ESYi)
2019/05/13(月) 16:16:41.14ID:d2gOVbtC0850デフォルトの名無しさん (ワッチョイ 9f40-BD3m)
2019/05/13(月) 16:23:36.93ID:UKQBojaO0851デフォルトの名無しさん (ワッチョイ 7f2d-vM1y)
2019/05/13(月) 16:31:17.78ID:fb9Hu3lu0 ついでに聞きたいんだけど、このボタンの描画ってUIスレッドで実行されることは保証されてるの?
852デフォルトの名無しさん (ワッチョイ 7f7c-lLD7)
2019/05/13(月) 16:34:35.11ID:VAfV6Qs50853デフォルトの名無しさん (ワッチョイ 9f40-BD3m)
2019/05/13(月) 16:51:55.46ID:UKQBojaO0■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 空自機レーダー照射、音声データ公開 中国 ★2 [蚤の市★]
- 中国とロシアの爆撃機、日本周辺で共同飛行 [少考さん★]
- 「中国側も日本機のレーダーを感知していた」 中国メディアが報道 [♪♪♪★]
- 【YouTuber】バイク事故で入院のゆたぼん、振込で「お見舞金」募る [muffin★]
- 堀江貴文、キャッシュレス非対応の店にモヤッ 『PayPay』立ち上げの人物にまさかの直談判「現金決済しかできないんだけど…」 [冬月記者★]
- 高市早苗首相、消費税減税に後ろ向き 足かせはレジシステム? 「責任ある積極財政」期待高いが [蚤の市★]
- 防衛省、中国を完全論破www 「事前通告があったのは海自であって空自ではない」 高市早苗勝利 [175344491]
- 【悲惨】中国軍が自衛隊に「事前通告」し自衛隊も返答した音声が公開されてしまうwwwこれは高市チェックアウトゕ★4 [597533159]
- 【悲報】JA「全然米が売れなくて倉庫を圧迫してる。助けて!」米卸売り業者「安売りしたら赤字になる…助けて!」 [802034645]
- 韓国政府、高市早苗の「竹島領土」発言にブチギレwwwwwwwwwwwwwwww [834922174]
- 元統合幕僚長「演習通告の音声は公開されたが、レーダー照射時のものではない」高市政府「www」 [834922174]
- 【急募】佐藤健(37)さんが急にバカにされ始めた理由WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
