「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください
>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■関連スレ
C#, C♯, C#相談室 Part95
http://mevius.5ch.net/test/read.cgi/tech/1508180530/
C#, C♯, C#相談室 Part93
https://mevius.5ch.net/test/read.cgi/tech/1492818720/
■前スレ
ふらっと C#,C♯,C#(初心者用) Part136
http://mevius.5ch.net/test/read.cgi/tech/1520057345/
■コードを貼る場合は↓を使いましょう。
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/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
探検
ふらっと C#,C♯,C#(初心者用) Part137
レス数が1000を超えています。これ以上書き込みはできません。
1デフォルトの名無しさん (ドコグロ MM07-2FKJ)
2018/04/06(金) 17:40:19.48ID:oKXVP34zM980デフォルトの名無しさん (アウアウカー Sa5d-GynM)
2018/06/05(火) 08:07:17.14ID:D4M8TybKa Signalを使っても作れるな。
981デフォルトの名無しさん (ワッチョイ fa11-W/zB)
2018/06/05(火) 09:11:21.09ID:GjVlFAo70 >>958
PCをあまり使い慣れてない人とか、ボタンはシングルクリックでいいのをダブルクリックしちゃったりとかあるんだよなこれが・・・
PCをあまり使い慣れてない人とか、ボタンはシングルクリックでいいのをダブルクリックしちゃったりとかあるんだよなこれが・・・
982デフォルトの名無しさん (アウアウカー Sa5d-SvXf)
2018/06/05(火) 09:29:57.56ID:nr/+sOXHa 非同期じゃないならボタンイネーブル切ればいいだけじゃね
983デフォルトの名無しさん (アウアウカー Sa5d-SvXf)
2018/06/05(火) 09:32:16.99ID:nr/+sOXHa すまん。忘れてくれ
984デフォルトの名無しさん (アウアウウー Sa09-NLsb)
2018/06/05(火) 10:35:58.82ID:l/0/VM/ma 状態をGUIだけに持たせておくのはおかしいといつか思うはず
985デフォルトの名無しさん (アウアウエー Sa22-UB1l)
2018/06/05(火) 12:11:20.04ID:vCTdp4Eha >>979
class FrameReceivedEventArgs:EventArgs
{
public byte[] Frame{get; private set;}
....
}
class CommunicationPort
{
public even EventHandler<FrameReceivedEventArgs> FrameReceived;
....
}
class FrameDecoder
{
public FrameDecoder(CommunicationPort c}
{
c.FrameReceived += CommunicationPort_FrameReceived;
}
private void CommunicationPort_FrameReceived((object sender, FrameReceivedEventArgs e)
{
....
}
....
}
class FrameReceivedEventArgs:EventArgs
{
public byte[] Frame{get; private set;}
....
}
class CommunicationPort
{
public even EventHandler<FrameReceivedEventArgs> FrameReceived;
....
}
class FrameDecoder
{
public FrameDecoder(CommunicationPort c}
{
c.FrameReceived += CommunicationPort_FrameReceived;
}
private void CommunicationPort_FrameReceived((object sender, FrameReceivedEventArgs e)
{
....
}
....
}
986デフォルトの名無しさん (ブーイモ MMbe-CKCa)
2018/06/05(火) 12:44:05.86ID:eGZjT6RJM987デフォルトの名無しさん (ブーイモ MMbe-CKCa)
2018/06/05(火) 12:51:41.81ID:eGZjT6RJM988デフォルトの名無しさん (アウアウエー Sa22-UB1l)
2018/06/05(火) 12:55:30.14ID:vCTdp4Eha 何言ってるのかさっぱりわからん
よくわからん思考回路だな...
よくわからん思考回路だな...
989デフォルトの名無しさん (ワッチョイ fa11-W/zB)
2018/06/05(火) 13:09:28.12ID:GjVlFAo70 言い回しがようわからんが
>>985みたいなのするのが解放されないオブジェクトを量産するっていうのはなんとなくわかる
>>985みたいなのするのが解放されないオブジェクトを量産するっていうのはなんとなくわかる
990デフォルトの名無しさん (アウアウウー Sa09-CKCa)
2018/06/05(火) 13:11:38.32ID:vyKZFDS5a >>988
分からないならイベントというものを正しく理解してないんじゃないかな
ボタンのクリックイベントをフォームが受け取れるのは、ボタンがフォームへの参照を(実際には間にデリゲートが入るので間接的にだが)持ってるから
基本的に、引数に渡ってきたものに自分自身を登録するのは避けたほうがいい
オブジェクトのライフタイムが非常に分かりにくくなるから
分からないならイベントというものを正しく理解してないんじゃないかな
ボタンのクリックイベントをフォームが受け取れるのは、ボタンがフォームへの参照を(実際には間にデリゲートが入るので間接的にだが)持ってるから
基本的に、引数に渡ってきたものに自分自身を登録するのは避けたほうがいい
オブジェクトのライフタイムが非常に分かりにくくなるから
991デフォルトの名無しさん (ワントンキン MM8a-67BG)
2018/06/05(火) 13:53:28.61ID:UBCugO63M reactive extensionsって.NET発祥なのに使う人少ないよね
992デフォルトの名無しさん (ワッチョイ cd24-lkdC)
2018/06/05(火) 15:23:49.06ID:n583dJR10993デフォルトの名無しさん (ワッチョイ cd24-lkdC)
2018/06/05(火) 15:24:19.24ID:n583dJR10 >>970
そうなんですか。。。
NET Coreっての調べてみます。どうも有難う御座います。
ちょど昨日 GUI って何だ??って検索したばかりでした。
3日前からプログラムの勉強をはじめたばかりで。。。
そうなんですか。。。
NET Coreっての調べてみます。どうも有難う御座います。
ちょど昨日 GUI って何だ??って検索したばかりでした。
3日前からプログラムの勉強をはじめたばかりで。。。
994デフォルトの名無しさん (ワッチョイ cd24-lkdC)
2018/06/05(火) 15:24:34.93ID:n583dJR10995デフォルトの名無しさん (アウアウエー Sa22-UB1l)
2018/06/05(火) 16:15:32.44ID:vCTdp4Eha996デフォルトの名無しさん (アウアウエー Sa22-UB1l)
2018/06/05(火) 16:16:25.51ID:vCTdp4Eha あ、
× イベントの購読解除
〇 イベントの購読解除忘れ
× イベントの購読解除
〇 イベントの購読解除忘れ
997デフォルトの名無しさん (ワッチョイ d69a-msj4)
2018/06/05(火) 19:31:17.11ID:70UTtyrn0 次スレたててみる
998デフォルトの名無しさん (ワッチョイ d69a-msj4)
2018/06/05(火) 19:33:22.39ID:70UTtyrn0999デフォルトの名無しさん (アウアウウー Sa09-CKCa)
2018/06/06(水) 00:18:56.95ID:+J9HGVUKa >>995
想像力のない人だなあ
>>985だと、イベントハンドラの登録を解除しない限り、FrameDecoderが不要になっても
登録先のCommunicationPortよりも先にGCされることは絶対にない。
じゃあ不要になったらイベントハンドラを登録解除できるようにしよう。いつ解除する?
それはFrameDecoder自身には分からない。知っているとしたら、それは>>976のいうメインクラスだろう。
登録解除するにはFrameDecoderクラスのDisposeメソッドを呼べ、という仕様にするか?
結局、985のFrameDecoderを正しく扱うには、メインクラス側がそういうクラス外から見ただけでは想像できないFrameDecoderの気難しい仕様を理解した上で、
必要に応じて明示的な解放を行わなくてはならない。
そんなことをするくらいならメインクラス側で明示的に登録・登録解除をやったほうが遥かに素直で分かりやすい。
想像力のない人だなあ
>>985だと、イベントハンドラの登録を解除しない限り、FrameDecoderが不要になっても
登録先のCommunicationPortよりも先にGCされることは絶対にない。
じゃあ不要になったらイベントハンドラを登録解除できるようにしよう。いつ解除する?
それはFrameDecoder自身には分からない。知っているとしたら、それは>>976のいうメインクラスだろう。
登録解除するにはFrameDecoderクラスのDisposeメソッドを呼べ、という仕様にするか?
結局、985のFrameDecoderを正しく扱うには、メインクラス側がそういうクラス外から見ただけでは想像できないFrameDecoderの気難しい仕様を理解した上で、
必要に応じて明示的な解放を行わなくてはならない。
そんなことをするくらいならメインクラス側で明示的に登録・登録解除をやったほうが遥かに素直で分かりやすい。
1000デフォルトの名無しさん (アウアウカー Sa5d-SvXf)
2018/06/06(水) 00:26:33.34ID:D75pa1n0a 質問いいですか?
10011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 60日 6時間 46分 14秒
新しいスレッドを立ててください。
life time: 60日 6時間 46分 14秒
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 【台湾有事】トランプ氏 電話会談で高市総理に発言抑制を要求か 米メディア報道… ★9 [BFU★]
- 【台湾有事】トランプ氏 電話会談で高市総理に発言抑制を要求か 米メディア報道… ★10 [BFU★]
- 【速報】 トランプ米大統領が高市首相に、台湾巡り助言したという報道は事実ではない 日本政府が否定 ★2 [お断り★]
- 参政・梅村みずほ議員「土葬を原則禁止にしろ」「上皇陛下も火葬が望ましいといってる」 [バイト歴50年★]
- 【ひるおび】国分太一に「違和感」「筋違い」「独善的と思われても…」八代弁護士が厳しい言葉並べる [ぐれ★]
- 【愛知一宮】「年末ジャンボ宝くじ」1等7億円、当選くじが無効の危機…販売した店舗「確認して早く換金を」 [おっさん友の会★]
- 【実況】博衣こよりのえちえちholoXをおもてなされ🛸💜🥀🧪🍃
- 【悲報】高市内閣、トランプの顔に泥を塗る対応始める [256556981]
- 愛のままにわがままに👶は👶🏿だけを傷つけないお🏡
- 【悲報】高市内閣・木原官房長官、WSJ報道「そのような事実はない」WSJに抗議★2 [115996789]
- セブンイレブンが揚げ物半額
- 高市関税キター!! [834922174]
