「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください
>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■関連スレ
C#, C♯, C#相談室 Part93
https://mevius.5ch.net/test/read.cgi/tech/1492818720/
■前スレ
ふらっと C#,C♯,C#(初心者用) Part138
https://mevius.5ch.net/test/read.cgi/tech/1528194762/
■コードを貼る場合は↓を使いましょう。
http://ideone.com/
https://dotnetfiddle.net/
■情報源
https://msdn.microsoft.com/ja-jp/library/gg145045.aspx
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/index
https://msdn.microsoft.com/en-us/library/gg145045.aspx
http://referencesource.microsoft.com/
ふらっと C#,C♯,C#(初心者用) Part139
■ このスレッドは過去ログ倉庫に格納されています
2018/08/05(日) 19:55:44.50ID:tZmoj8I+
773デフォルトの名無しさん
2018/09/23(日) 14:20:21.01ID:jYUPCkq4 React & Fluxを使いだすとmvvmはもう戻れないと言ってるやつと同じレベルだな
774デフォルトの名無しさん
2018/09/23(日) 14:21:04.98ID:jYUPCkq4 >>772
そこがお前の限界
そこがお前の限界
775デフォルトの名無しさん
2018/09/23(日) 14:21:15.43ID:9e4CRvDY776デフォルトの名無しさん
2018/09/23(日) 14:21:33.58ID:9e4CRvDY >>774
ブーメラン
ブーメラン
777デフォルトの名無しさん
2018/09/23(日) 14:23:04.60ID:jYUPCkq4 アジャイルを知ったらもう他にはもどれない
TDDじゃない開発はIT土方だ
などとくだらないことをいうバカ信者は死ねばいい
TDDじゃない開発はIT土方だ
などとくだらないことをいうバカ信者は死ねばいい
778デフォルトの名無しさん
2018/09/23(日) 14:26:57.57ID:jYUPCkq4 FBは一時期mvvmに傾倒してたけど大規模になってくるとなぜだか思ったように動かないことが多くなって
mvvm自体に弱点があることに気付いた
そしてmvvmを捨てることにした
中小規模ならmvvmはまだ使えるが大規模になると使えない
状態を追いきれない
mvvm自体に弱点があることに気付いた
そしてmvvmを捨てることにした
中小規模ならmvvmはまだ使えるが大規模になると使えない
状態を追いきれない
779デフォルトの名無しさん
2018/09/23(日) 14:31:36.73ID:jYUPCkq4 FBによるとmvvmでは大規模になると値が変わった場合どこでどうしたからその値が変わったのか説明できない
元をたどれないことが多くてバグをつぶしたと思ったら同じバグがまた出ることに悩まされていた
簡単にどこででも状態をいじれることが間違っていたと判断した
元をたどれないことが多くてバグをつぶしたと思ったら同じバグがまた出ることに悩まされていた
簡単にどこででも状態をいじれることが間違っていたと判断した
780デフォルトの名無しさん
2018/09/23(日) 14:38:33.91ID:q1Vd+N6m 真っ赤なスレ違い
781デフォルトの名無しさん
2018/09/23(日) 15:30:30.23ID:8zSZzIZI MVVMってV-VM-Mなの?
782デフォルトの名無しさん
2018/09/23(日) 16:33:57.42ID:qwzkV0Ze MVCを知りたいという初心者に
MVVMの有能さを洗脳するスレなのか
MVVMの有能さを洗脳するスレなのか
783デフォルトの名無しさん
2018/09/23(日) 16:45:09.37ID:sUwtRH+p デザパタ語りたがり初心者が湧いてるのか
ママにでも教えてやれ
ママにでも教えてやれ
784デフォルトの名無しさん
2018/09/23(日) 16:53:04.68ID:9e4CRvDY ViewをViewModelの影に徹させて管理すべき状態数を明確化、最小化しようってアイデアがMVVMの基本
なのでその明確化、最小化された状態数すら追いきれないというならMVVMをやめた途端に余計に追いきれなくなるだけだ
なのでその明確化、最小化された状態数すら追いきれないというならMVVMをやめた途端に余計に追いきれなくなるだけだ
785デフォルトの名無しさん
2018/09/23(日) 17:03:54.35ID:jYUPCkq4 それがお前の限界だよ
786デフォルトの名無しさん
2018/09/23(日) 17:45:23.67ID:iWYV1BwG ID:9e4CRvDY
ID:jYUPCkq4
恥ずかしいやつら
ID:jYUPCkq4
恥ずかしいやつら
787デフォルトの名無しさん
2018/09/23(日) 18:12:28.13ID:rcV006B3 >>761
MSに生涯の忠誠を誓うんならSQL Serverでいいけど、そうでないならPostgresかMySQLがいいよ
SQL Serverって癖が強くて性能も低くてVSやWinとの相性を除けば正直ク○
MSに生涯の忠誠を誓うんならSQL Serverでいいけど、そうでないならPostgresかMySQLがいいよ
SQL Serverって癖が強くて性能も低くてVSやWinとの相性を除けば正直ク○
788デフォルトの名無しさん
2018/09/23(日) 18:15:05.38ID:JZ2tjL8B >>786
ガイジを列挙するな
ガイジを列挙するな
789デフォルトの名無しさん
2018/09/23(日) 18:58:36.13ID:z3WNOmb5 >>783
デザパタじゃないからw
デザパタじゃないからw
790デフォルトの名無しさん
2018/09/23(日) 19:02:57.05ID:qwzkV0Ze 元質問は739じゃ無いのか?
791デフォルトの名無しさん
2018/09/23(日) 19:24:28.10ID:JZ2tjL8B 人間初心者スレとはたまげたな
792デフォルトの名無しさん
2018/09/23(日) 19:31:52.04ID:cRG95Xcq いま、SQLiteのテーブルを編集するおもちゃを
CLRのwindowsフォームでC#でなく、あえてC++で作って遊んでみてる
書いてることはC#と当然ほぼ同じになる
SQLiteをODBC経由でアクセスするだけで
DataGridViewで簡単にDBの編集ができることが分かった
ただし、MSが提供してるコンポーネントを適切に使用する必要がある
DataAdapterでDataSetとって
DataSetからDataTableとって、そのDataTableをDataGridViewのDataSourceに設定する
※ どうやらSQLiteでは1つのテーブルのデータセットしかとれない模様
※ DataSetという意味ではこのDataSetは超無意味
で、DBの種類とか関係なく
C#で用意されてるコンポーネント経由でデータがとれるようにしないと
作るのが極端にめんどい
なにがいいたいかといえば
C#のおもちゃ部品使ってるくせに
MSがどうこういってることが的外れ
C#とMSのコンポーネント使ってる時点で、
どっぷりMSに浸かってる
CLRのwindowsフォームでC#でなく、あえてC++で作って遊んでみてる
書いてることはC#と当然ほぼ同じになる
SQLiteをODBC経由でアクセスするだけで
DataGridViewで簡単にDBの編集ができることが分かった
ただし、MSが提供してるコンポーネントを適切に使用する必要がある
DataAdapterでDataSetとって
DataSetからDataTableとって、そのDataTableをDataGridViewのDataSourceに設定する
※ どうやらSQLiteでは1つのテーブルのデータセットしかとれない模様
※ DataSetという意味ではこのDataSetは超無意味
で、DBの種類とか関係なく
C#で用意されてるコンポーネント経由でデータがとれるようにしないと
作るのが極端にめんどい
なにがいいたいかといえば
C#のおもちゃ部品使ってるくせに
MSがどうこういってることが的外れ
C#とMSのコンポーネント使ってる時点で、
どっぷりMSに浸かってる
793デフォルトの名無しさん
2018/09/23(日) 19:46:25.43ID:qwzkV0Ze >>791
平伏せよ
平伏せよ
794デフォルトの名無しさん
2018/09/23(日) 20:18:59.85ID:kzypxn8Z795デフォルトの名無しさん
2018/09/23(日) 20:29:06.67ID:eq3kKmf9 MVVMを現実のものに例えるとどうなりますか?
796デフォルトの名無しさん
2018/09/23(日) 20:54:23.90ID:z3WNOmb5 ないね
何でもそうだけどあるがまま理解するのが結局早い
たとえ話は理解の助けにならん
あえて言えばVMがMをVの都合に合わせる装置として機能する、って考えればトランスとか
でもトランスは一方通行だし、そもそもトランスが何か分かる奴も少ないよなw
何でもそうだけどあるがまま理解するのが結局早い
たとえ話は理解の助けにならん
あえて言えばVMがMをVの都合に合わせる装置として機能する、って考えればトランスとか
でもトランスは一方通行だし、そもそもトランスが何か分かる奴も少ないよなw
797デフォルトの名無しさん
2018/09/23(日) 20:55:30.10ID:z3WNOmb5 でも理解しなくていいと思うw
全然普及してないし、私見だけどMVVMなんて複雑な問題をより複雑な別の問題に置き換えるだけw
全然普及してないし、私見だけどMVVMなんて複雑な問題をより複雑な別の問題に置き換えるだけw
798デフォルトの名無しさん
2018/09/23(日) 21:22:07.50ID:H5quPExp 話し変わるけどちょっと聞きたいのだが
コミット前に全ソースコードをバッチ処理でフォーマットしたいのだが良いツール知らん?
Visual Studioでフォーマットできるけど、修正したいファイルを1こ1こ開いてフォーマットを実行しなきゃならんから、ちょっとしんどい
Visual Studioに依存せずにコマンドラインから使えることが必須条件
コミット前に全ソースコードをバッチ処理でフォーマットしたいのだが良いツール知らん?
Visual Studioでフォーマットできるけど、修正したいファイルを1こ1こ開いてフォーマットを実行しなきゃならんから、ちょっとしんどい
Visual Studioに依存せずにコマンドラインから使えることが必須条件
799デフォルトの名無しさん
2018/09/23(日) 21:40:31.39ID:cRG95Xcq MVVMとかぜんぜん知らんが
DBMSでいえば、
ModelがテーブルでViewModelがビューテーブル程度のしょうもないもんにしか
パッと見た感じで、見えんかったわ
で、Viewがビューテーブルをひたすら参照
DBMSでいえば、
ModelがテーブルでViewModelがビューテーブル程度のしょうもないもんにしか
パッと見た感じで、見えんかったわ
で、Viewがビューテーブルをひたすら参照
800デフォルトの名無しさん
2018/09/23(日) 21:47:30.18ID:qG17FGT6 >>799
全然あってなくて困るレベル
全然あってなくて困るレベル
801デフォルトの名無しさん
2018/09/23(日) 21:52:07.09ID:qG17FGT6802デフォルトの名無しさん
2018/09/23(日) 21:56:27.70ID:cRG95Xcq そうかそれは残念だ
ViewModelのbindなんかすでに決まった手続きのパラメータマッピングしてるだけのように
しかみえないしな
この部分はDBMSでいえばプリペアドステートメントに
パラメータをバインドする操作と似ているとは思った
ViewModelのbindなんかすでに決まった手続きのパラメータマッピングしてるだけのように
しかみえないしな
この部分はDBMSでいえばプリペアドステートメントに
パラメータをバインドする操作と似ているとは思った
803デフォルトの名無しさん
2018/09/23(日) 21:59:51.53ID:gaT7ABZW >>801
今ここでおしえて
今ここでおしえて
804デフォルトの名無しさん
2018/09/23(日) 22:08:25.29ID:cRG95Xcq MVC
View ←(Update)← Controller ←(Notify)← Model
View →(User action)→ Controller →(Update)→ Model
カサカサ
三 三 /\彡⌒ ミ/\
三 三 /\(´・ω・`)/\
View ← ViewModel ←(Notify)← Model
View →(Bind)→ ViewModel →(Update)→ Model
ViewModel から View に一切作用しようとしない
ViewはViewModelにインターフェースの提供のみ
大雑把には
ModelのデータをViewが参照できるデータになるように
ViewModelがマッピングや加工して取ったり設定したりするインターフェースを
Viewに提供してるだけのようにしかオレには見えんかったわ
マジで
View ←(Update)← Controller ←(Notify)← Model
View →(User action)→ Controller →(Update)→ Model
カサカサ
三 三 /\彡⌒ ミ/\
三 三 /\(´・ω・`)/\
View ← ViewModel ←(Notify)← Model
View →(Bind)→ ViewModel →(Update)→ Model
ViewModel から View に一切作用しようとしない
ViewはViewModelにインターフェースの提供のみ
大雑把には
ModelのデータをViewが参照できるデータになるように
ViewModelがマッピングや加工して取ったり設定したりするインターフェースを
Viewに提供してるだけのようにしかオレには見えんかったわ
マジで
805デフォルトの名無しさん
2018/09/23(日) 22:15:42.60ID:bzyPZ4ls >>798
整形できるツールはVisualstudioかVSCodeくらいしかないんだろう?
UWSCのような自動化ツール使うこと考えるのが一番早いんじゃないの
これ以上はVisualStudioかVSCodeのスレで聞いた方がいいかと
整形できるツールはVisualstudioかVSCodeくらいしかないんだろう?
UWSCのような自動化ツール使うこと考えるのが一番早いんじゃないの
これ以上はVisualStudioかVSCodeのスレで聞いた方がいいかと
806デフォルトの名無しさん
2018/09/23(日) 22:17:55.81ID:H5quPExp807デフォルトの名無しさん
2018/09/23(日) 22:36:00.38ID:cRG95Xcq CLRのオブジェクトにPropertyGridというのがあるが
いま丁度それでDBMSの値を更新するおもちゃ作ろうとしてる
なんとなくコレに似てるのかなあとは思う
設定取得のプロパティーインターフェースをもったインスタンスを渡すだけで
そのインスタンスのインターフェース使って
プロパティー設定の画面インターフェースがPropertyGridに勝手にできあがってしまう
すげえと思ったが、なんとなくうさんくさい
どういう仕組みになってるのかはぜんぜん分からないが
そのデータの設定取得の仕方は実装する側でなんとでもできるのは分かる
いま丁度それでDBMSの値を更新するおもちゃ作ろうとしてる
なんとなくコレに似てるのかなあとは思う
設定取得のプロパティーインターフェースをもったインスタンスを渡すだけで
そのインスタンスのインターフェース使って
プロパティー設定の画面インターフェースがPropertyGridに勝手にできあがってしまう
すげえと思ったが、なんとなくうさんくさい
どういう仕組みになってるのかはぜんぜん分からないが
そのデータの設定取得の仕方は実装する側でなんとでもできるのは分かる
808デフォルトの名無しさん
2018/09/23(日) 23:00:05.22ID:5OkVsLkb809デフォルトの名無しさん
2018/09/23(日) 23:21:53.73ID:cRG95Xcq きっとなちょろっと試しに検索したら↓コレが一発であったとしか考えられない
https://github.com/dotnet/codeformatter
ホントな質問するヤツも回答するヤツも無能揃いといっていい
回答するヤツもググレカスとすらいわないからな
回答するヤツも最初から回答できるレベルじゃない
むしろ回答しないほうがマシなレベルといっていい
https://github.com/dotnet/codeformatter
ホントな質問するヤツも回答するヤツも無能揃いといっていい
回答するヤツもググレカスとすらいわないからな
回答するヤツも最初から回答できるレベルじゃない
むしろ回答しないほうがマシなレベルといっていい
810デフォルトの名無しさん
2018/09/24(月) 00:01:35.94ID:OxVBaH7R811デフォルトの名無しさん
2018/09/24(月) 09:28:32.62ID:yFnU/yKn リファクタリングってやってる?
いつも気付くと似たような処理や非効率な処理が増えてて辛い……
凄腕のマなら最初から効率的なコード書けるんだろうけどさ……
いつも気付くと似たような処理や非効率な処理が増えてて辛い……
凄腕のマなら最初から効率的なコード書けるんだろうけどさ……
812デフォルトの名無しさん
2018/09/24(月) 09:35:05.11ID:/23hZmm4 動いているコードに手をつけるリファクタリングは最悪。
813デフォルトの名無しさん
2018/09/24(月) 09:38:03.20ID:yFnU/yKn でもでもっ!
ちょっと弄るだけで処理が効率よくなり、コードがリーダブルになり、exe(dll)のサイズも小さくなりますよ?
テスト前ならいいよね?
ちょっと弄るだけで処理が効率よくなり、コードがリーダブルになり、exe(dll)のサイズも小さくなりますよ?
テスト前ならいいよね?
814デフォルトの名無しさん
2018/09/24(月) 09:39:36.03ID:sPlVwsRd815デフォルトの名無しさん
2018/09/24(月) 09:43:14.50ID:UOx+eYoH >>813
だめや、くだらん時間つこてないでテストせえ
だめや、くだらん時間つこてないでテストせえ
816デフォルトの名無しさん
2018/09/24(月) 09:46:42.21ID:ySiXDenR817デフォルトの名無しさん
2018/09/24(月) 09:48:31.14ID:osKypOlL >>811
私は時々やりますけどね
新しいネタ仕入れたときとか試してみたり
普段あまり先を考えずに逐次的な処理を思いつきで描くので
冗長になりがちだし
数年自分で使ってみると不必要な機能や処理が見えてきて
そいつをそぎ落としたりする
私は時々やりますけどね
新しいネタ仕入れたときとか試してみたり
普段あまり先を考えずに逐次的な処理を思いつきで描くので
冗長になりがちだし
数年自分で使ってみると不必要な機能や処理が見えてきて
そいつをそぎ落としたりする
818デフォルトの名無しさん
2018/09/24(月) 09:55:37.87ID:OxVBaH7R 業務系はメンテを他社がやることが多い
なので競争相手の負担になるようにリファクタリングしていない汚いコードを納品したほうが資本主義的に正しい
なので競争相手の負担になるようにリファクタリングしていない汚いコードを納品したほうが資本主義的に正しい
819デフォルトの名無しさん
2018/09/24(月) 09:59:35.91ID:KDQ780rJ マ板でやれ
820デフォルトの名無しさん
2018/09/24(月) 10:01:45.14ID:KHvr4x1U クローンコードは……無能の証……
細かく……機能毎に……クラス化……メソッド化せよ……
有能なマなら……30行程度までの……小さなメソッドが……いくつもできる……
当然……役割で機能クラス化し……マジックナンバーも使わない……
無能は……1クラスにメソッドを詰め込み……メソッドも100行を超えることがある……
クローンコードだらけで……おまけにマジックナンバーがあり……保守性が……非常に悪い……
細かく……機能毎に……クラス化……メソッド化せよ……
有能なマなら……30行程度までの……小さなメソッドが……いくつもできる……
当然……役割で機能クラス化し……マジックナンバーも使わない……
無能は……1クラスにメソッドを詰め込み……メソッドも100行を超えることがある……
クローンコードだらけで……おまけにマジックナンバーがあり……保守性が……非常に悪い……
821デフォルトの名無しさん
2018/09/24(月) 10:01:45.99ID:osKypOlL ここは初心者スレ
822デフォルトの名無しさん
2018/09/24(月) 10:03:47.23ID:ySiXDenR 初心者相手だからこそ善導せねばならない。
リファクタリングとやらにうつつを抜かす暇があるなら目前のコードを正しく読む力を会得するべきである。
リファクタリングとやらにうつつを抜かす暇があるなら目前のコードを正しく読む力を会得するべきである。
823デフォルトの名無しさん
2018/09/24(月) 10:04:15.61ID:KHvr4x1U824デフォルトの名無しさん
2018/09/24(月) 10:09:35.45ID:RUArc1Op そもそも何を目的としてリファクタリングなんてするわけ?
次の開発は来ないかも知れないじゃない?
また、次の開発を目的とするなら仕様がわかってから手を出せばいい
全てにおいてトンチンカン
次の開発は来ないかも知れないじゃない?
また、次の開発を目的とするなら仕様がわかってから手を出せばいい
全てにおいてトンチンカン
825デフォルトの名無しさん
2018/09/24(月) 10:20:00.26ID:rB4zdy0A 伸びてるときはガイジしかいないな
826デフォルトの名無しさん
2018/09/24(月) 10:21:07.52ID:iTzVBLdT >>820
普通この辺りってネットで調べたら一番に出てくるのに、なんで糞コード量産されちゃうんだろう・・・
普通この辺りってネットで調べたら一番に出てくるのに、なんで糞コード量産されちゃうんだろう・・・
827デフォルトの名無しさん
2018/09/24(月) 10:26:35.15ID:SrcYdwzB828デフォルトの名無しさん
2018/09/24(月) 10:46:02.74ID:ySiXDenR >>825
リファクタリングなんての持ちだして初心者を混乱させるガイジが多くて困るよ
リファクタリングなんての持ちだして初心者を混乱させるガイジが多くて困るよ
829デフォルトの名無しさん
2018/09/24(月) 10:49:53.69ID:TmR9qzOH そういや、VSCodeのswitch文の変な整形って何時になったら直るんかねえ?
830デフォルトの名無しさん
2018/09/24(月) 11:10:08.31ID:L/eVK/99 else句を多く使うのは三流PG
一流のPGは極力else句を避けるものだ
else if なんてのは論外だ
returnせよ!
一流のPGは極力else句を避けるものだ
else if なんてのは論外だ
returnせよ!
831デフォルトの名無しさん
2018/09/24(月) 11:21:43.89ID:OxVBaH7R832デフォルトの名無しさん
2018/09/24(月) 11:23:43.58ID:OxVBaH7R833デフォルトの名無しさん
2018/09/24(月) 11:33:19.66ID:VSctwqS/ 「ガイジ」なんて汚い言葉を平気で使える奴って自分で自分がどんな人間か
語るに落ちてることも気づかないんだろうな
語るに落ちてることも気づかないんだろうな
834デフォルトの名無しさん
2018/09/24(月) 11:41:30.08ID:VSctwqS/ >>832
こういう思考回路の人がマ板とかでブラック企業とか人買いとか吠えてるんだろうな。
こういう思考回路の人がマ板とかでブラック企業とか人買いとか吠えてるんだろうな。
835デフォルトの名無しさん
2018/09/24(月) 11:42:43.02ID:A8fPcUdc キミたちc#で何作ってるの?
俺はFormアプリしか作ってない
Webアプリはrubyかphpで構築
Formアプリなんかクッソ時代遅れ感あるけど
俺はFormアプリしか作ってない
Webアプリはrubyかphpで構築
Formアプリなんかクッソ時代遅れ感あるけど
836デフォルトの名無しさん
2018/09/24(月) 11:49:48.03ID:zTc6LZBq ガイジを連呼する差別主義者は自分が社会の最底辺だと気がついてないんだろうな
リアルな社会でもガイジ連呼して白い目でみられればいい
リアルな社会でもガイジ連呼して白い目でみられればいい
837デフォルトの名無しさん
2018/09/24(月) 11:53:59.68ID:sWz4zxrJ >>811
完成までの間にいつもやってる。
とりあえず適当に動くモノを作ってみる → 自分の担当部分を見直して整理する
最初に動くモノが出来るまでが貰った期間の 1/4 〜 1/3 くらいの時点、あとは時間が許す限り(組み直して遊んでる)。
やってるうちに最初から(自分なりに)組み直しする必要のないコードが書けるようになってく。
でもそのときは自分の技量が上がってるから別のやり方を試したくなるので堂々巡り。
受け入れる側とすればコードのわかりやすさとか以前に試験しろよと思う。
なんでこっちがバグ出ししてやらなきゃならねーんだよ、と。
完成までの間にいつもやってる。
とりあえず適当に動くモノを作ってみる → 自分の担当部分を見直して整理する
最初に動くモノが出来るまでが貰った期間の 1/4 〜 1/3 くらいの時点、あとは時間が許す限り(組み直して遊んでる)。
やってるうちに最初から(自分なりに)組み直しする必要のないコードが書けるようになってく。
でもそのときは自分の技量が上がってるから別のやり方を試したくなるので堂々巡り。
受け入れる側とすればコードのわかりやすさとか以前に試験しろよと思う。
なんでこっちがバグ出ししてやらなきゃならねーんだよ、と。
838デフォルトの名無しさん
2018/09/24(月) 13:46:58.45ID:nocx8ro5839デフォルトの名無しさん
2018/09/24(月) 13:57:10.32ID:OxVBaH7R840デフォルトの名無しさん
2018/09/24(月) 14:01:02.69ID:OJN25ACF いくら暇だからってこの流れはひどい
841デフォルトの名無しさん
2018/09/24(月) 14:14:52.92ID:Gw7mXU1y c#スレだぞ
842デフォルトの名無しさん
2018/09/24(月) 14:21:56.83ID:UjLVuG2t 偶然だぞ
843デフォルトの名無しさん
2018/09/24(月) 14:26:57.52ID:7nAgeebM 複数の戻り値ほしいとき、タプルを使うべきか、refつけてメソッド内で対応しちゃうか皆さんどうしてます?
844デフォルトの名無しさん
2018/09/24(月) 14:28:50.76ID:zTc6LZBq 今はタプルで前はクラス作ってた
845デフォルトの名無しさん
2018/09/24(月) 15:08:38.45ID:oYzwCf5A >>839
メトリクス計測と売上に相関でもあるの?
メトリクス計測と売上に相関でもあるの?
846デフォルトの名無しさん
2018/09/24(月) 15:30:13.77ID:DNs+Nta1847デフォルトの名無しさん
2018/09/24(月) 15:34:39.00ID:DNs+Nta1848デフォルトの名無しさん
2018/09/24(月) 16:27:41.20ID:EJ4GFkIW イミュータブルのほうが良くない?
なんでc#は引数をfinalできないのか不思議なんだけど理由あるの?
なんでc#は引数をfinalできないのか不思議なんだけど理由あるの?
849デフォルトの名無しさん
2018/09/24(月) 16:52:39.91ID:5Y6v7jeg >>848
in
in
850デフォルトの名無しさん
2018/09/24(月) 19:10:00.11ID:p57JLdmZ クリックした点から点まで連続線を引いてダブルクリックで連続線を終える。
これって難しいですか?参考サイトとかありませんか?
これって難しいですか?参考サイトとかありませんか?
851デフォルトの名無しさん
2018/09/24(月) 19:21:40.73ID:sZ9gwywh >>850
ダブルクリックで最後の点+終了なら多分難しくない
MouseDownのイベントのe.Locationでコントロール上の座標を変数に格納する
前回の格納された座標があればそこから2点間の直線を描く
画像、印刷(GDI+)編メニュー https://dobon.net/vb/dotnet/graphics/index.html
線を描く https://dobon.net/vb/dotnet/graphics/drawline.html
ダブルクリックで最後の点+終了なら多分難しくない
MouseDownのイベントのe.Locationでコントロール上の座標を変数に格納する
前回の格納された座標があればそこから2点間の直線を描く
画像、印刷(GDI+)編メニュー https://dobon.net/vb/dotnet/graphics/index.html
線を描く https://dobon.net/vb/dotnet/graphics/drawline.html
852デフォルトの名無しさん
2018/09/24(月) 20:14:41.97ID:zTc6LZBq bool 編集モード =false;
bool 線を引いてるか =false;
Point 前のポイント =new Point();
こういうのを使っていけばいいんじゃないかな
クリックしたら
編集モードで線を引いてない(最初の点)なら点を表示
編集モードで線を引いてるなら前のポイントから今のクリック場所まで線を引く
ちゃんとやるならListに座標を記録
bool 線を引いてるか =false;
Point 前のポイント =new Point();
こういうのを使っていけばいいんじゃないかな
クリックしたら
編集モードで線を引いてない(最初の点)なら点を表示
編集モードで線を引いてるなら前のポイントから今のクリック場所まで線を引く
ちゃんとやるならListに座標を記録
853デフォルトの名無しさん
2018/09/24(月) 20:40:10.70ID:sZ9gwywh >>850
ヒマだったから書いてみた。ダブルクリックで画像初期化
//新しいWinフォームをDrawlinetestとして作ってForm1.csに以下の内容を差し替え
using System.Drawing;
using System.Windows.Forms;
namespace Drawlinetest
{
public partial class Form1 : Form
{
PictureBox pbox = new PictureBox();
Point pt = new Point(-1, -1);
public Form1()
{
InitializeComponent();
pbox.Location = new Point(0, 0); pbox.Size = new Size(500, 500);
this.Controls.Add(pbox); this.ClientSize = pbox.Size;
pbox.Image = new Bitmap(pbox.Width, pbox.Height);
pbox.MouseDown += MD;
}
private void MD(object sender, MouseEventArgs e)
{
Point p = e.Location;
if (e.Clicks > 1) { pbox.Image = new Bitmap(pbox.Width, pbox.Height); return; }//ダブルクリックで画像リセット
int x = pbox.Width - 1, y = pbox.Height - 1;
if (pt.X < 0 || pt.X > x || pt.Y < 0 || pt.Y > y) { pt = p; return; }
Graphics g = Graphics.FromImage(pbox.Image);
g.DrawLine(Pens.Black, pt.X, pt.Y, p.X, p.Y);
pbox.Refresh(); g.Dispose(); pt = p;
}
}
}
ヒマだったから書いてみた。ダブルクリックで画像初期化
//新しいWinフォームをDrawlinetestとして作ってForm1.csに以下の内容を差し替え
using System.Drawing;
using System.Windows.Forms;
namespace Drawlinetest
{
public partial class Form1 : Form
{
PictureBox pbox = new PictureBox();
Point pt = new Point(-1, -1);
public Form1()
{
InitializeComponent();
pbox.Location = new Point(0, 0); pbox.Size = new Size(500, 500);
this.Controls.Add(pbox); this.ClientSize = pbox.Size;
pbox.Image = new Bitmap(pbox.Width, pbox.Height);
pbox.MouseDown += MD;
}
private void MD(object sender, MouseEventArgs e)
{
Point p = e.Location;
if (e.Clicks > 1) { pbox.Image = new Bitmap(pbox.Width, pbox.Height); return; }//ダブルクリックで画像リセット
int x = pbox.Width - 1, y = pbox.Height - 1;
if (pt.X < 0 || pt.X > x || pt.Y < 0 || pt.Y > y) { pt = p; return; }
Graphics g = Graphics.FromImage(pbox.Image);
g.DrawLine(Pens.Black, pt.X, pt.Y, p.X, p.Y);
pbox.Refresh(); g.Dispose(); pt = p;
}
}
}
854デフォルトの名無しさん
2018/09/24(月) 20:43:24.90ID:2M6hZk6X ideoneにはりゃいいのに
855デフォルトの名無しさん
2018/09/24(月) 20:57:07.31ID:E4VB1fuR この程度ならいいんじゃね
いちいちidone開くのもかったるいし
いちいちidone開くのもかったるいし
856デフォルトの名無しさん
2018/09/24(月) 21:01:33.03ID:VSctwqS/ 暇だから書いてみたけど何もおもろないなw
public class PolygonalLineEditor
{
private List<Point> mPoints = new List<Point>();
public Pen Pen { get; set; }
public bool Clolsed { get; private set; }
public Control TargetControl { get; private set; }
public PolygonalLineEditor(Control target)
{
TargetControl = target;
Pen = new Pen(Brushes.Black);
TargetControl.Paint += TargetControl_Paint;
TargetControl.MouseClick += TargetControl_MouseClick;
TargetControl.DoubleClick += TargetControl_DoubleClick;
}
private void TargetControl_MouseClick(object sender, MouseEventArgs e)
{
if (Clolsed) return;
mPoints.Add(e.Location);
TargetControl.Invalidate();
}
private void TargetControl_DoubleClick(object sender, EventArgs e)
{
if (mPoints.Count < 2) return;
Clolsed = true;
}
public class PolygonalLineEditor
{
private List<Point> mPoints = new List<Point>();
public Pen Pen { get; set; }
public bool Clolsed { get; private set; }
public Control TargetControl { get; private set; }
public PolygonalLineEditor(Control target)
{
TargetControl = target;
Pen = new Pen(Brushes.Black);
TargetControl.Paint += TargetControl_Paint;
TargetControl.MouseClick += TargetControl_MouseClick;
TargetControl.DoubleClick += TargetControl_DoubleClick;
}
private void TargetControl_MouseClick(object sender, MouseEventArgs e)
{
if (Clolsed) return;
mPoints.Add(e.Location);
TargetControl.Invalidate();
}
private void TargetControl_DoubleClick(object sender, EventArgs e)
{
if (mPoints.Count < 2) return;
Clolsed = true;
}
857デフォルトの名無しさん
2018/09/24(月) 21:02:30.35ID:VSctwqS/ private void TargetControl_Paint(object sender, PaintEventArgs e)
{
if (mPoints.Count < 2) return;
e.Graphics.DrawLines(Pen, mPoints.ToArray());
}
}
>>854
どうせこの手のコードはイデオンじゃ実行できないしねw
{
if (mPoints.Count < 2) return;
e.Graphics.DrawLines(Pen, mPoints.ToArray());
}
}
>>854
どうせこの手のコードはイデオンじゃ実行できないしねw
858デフォルトの名無しさん
2018/09/24(月) 21:08:01.56ID:VSctwqS/ スレと全然関係ないけど、今ふと思って検索してみたらIDEONEの読みがマジでイデオンだと
勘違いしてる人が結構おって笑ったw
勘違いしてる人が結構おって笑ったw
859デフォルトの名無しさん
2018/09/24(月) 21:23:12.15ID:2M6hZk6X シンタックスハイライトとかの問題でいったんだけどまあいいや
860デフォルトの名無しさん
2018/09/24(月) 21:39:39.67ID:zEHGGd29 >>858
読み方はしらないが笑われて腹立ったので全方位にミサイルぶちまけてやる。
読み方はしらないが笑われて腹立ったので全方位にミサイルぶちまけてやる。
861デフォルトの名無しさん
2018/09/24(月) 21:41:12.17ID:oYzwCf5A ダッサ
ズームもできない
ズームもできない
862デフォルトの名無しさん
2018/09/24(月) 22:00:47.20ID:WUo/Kz5h >>849
使ってるVSが古くてinが使えないの・・・orz
使ってるVSが古くてinが使えないの・・・orz
863デフォルトの名無しさん
2018/09/24(月) 22:48:46.86ID:7nAgeebM >>858
アイディーイーワン?
アイディーイーワン?
864デフォルトの名無しさん
2018/09/24(月) 22:54:59.15ID:oYzwCf5A >>858
最後は全員死ぬんやで
最後は全員死ぬんやで
865デフォルトの名無しさん
2018/09/24(月) 23:06:45.85ID:2M6hZk6X >>858
IDE+ONEだとわかった上で読んでるに決まってるだろ
IDE+ONEだとわかった上で読んでるに決まってるだろ
866デフォルトの名無しさん
2018/09/25(火) 05:23:26.45ID:FXqod28S まあ>>858がどんなところを検索して見て言ってるのかよくわからんけど、そう言う事をいちいち指摘して優越感に浸るちっちぇー奴だと言うことはわかった
867デフォルトの名無しさん
2018/09/25(火) 06:10:41.82ID:O9LsAU4v IDEONEてイデオネじゃないの?
868428
2018/09/25(火) 06:15:54.53ID:FB7NCruc イデワンだな
869デフォルトの名無しさん
2018/09/25(火) 06:17:26.32ID:2mkvFBxM 井出ラッキョ
870デフォルトの名無しさん
2018/09/25(火) 06:47:16.83ID:qhYBdzAc K-1みたいなもんだな
871デフォルトの名無しさん
2018/09/25(火) 12:38:40.86ID:TdPE3gl/ >>858
何そのガンダムの武器みたいな読み方
何そのガンダムの武器みたいな読み方
872デフォルトの名無しさん
2018/09/25(火) 17:17:17.11ID:A3nOLsOi■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 小野田紀美・経済安保担当相「何か気に入らないことがあればすぐに経済的威圧をする国への依存はリスク」 ★2 [Hitzeschleier★]
- 【中国局長】両国関係に「深刻な影響」 首相発言の撤回要求 [蚤の市★]
- 【インバウンド】中国人観光客の日本での消費額は年間約2兆円超…中国政府は公務員の出張取り消し [1ゲットロボ★]
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか…★3 [BFU★]
- 【維新】吉村知事「中国人観光客だけに頼るビジネスモデル変えていかないといけない」「高市総理の発言は撤回する必要はない」 [Hitzeschleier★]
- 【社会】40代以上のおじさん・おばさんは叩いてオッケーという風潮はなぜ加速したのか [七波羅探題★]
- 自分に自信がない女の子、陽キャ美容室で80cmのエクステを付けた結果wwwwwwwwwwwwwwwwwww [329329848]
- 【高市速報】日本人の3割「中国への武力行使に踏み切る必要がある」ANN世論調査 [931948549]
- 外務省局長、よくわからないまま帰国へ [834922174]
- 【実況】博衣こよりのえちえち歌枠🧪
- 【朗報】外務省局長、中国側の要求を断固拒否。「高市さんの答弁は日本政府の立場を変えるものではないし、撤回しない」 [519511584]
- 農林水産省「春頃にはコメ価格落ち着くのでは」新米の取引価格、過去最高を更新。 [256556981]
