ふらっと C#,C♯,C#(初心者用) Part124at TECH
ふらっと C#,C♯,C#(初心者用) Part124 - 暇つぶし2ch950:デフォルトの名無しさん (ワッチョイ a685-TInN)
16/10/06 01:58:21.32 Mzv6j6zu0.net
await client.GetAsync(url, _cts.Token);
のキャンセルはサーバーがなかなかレスポンス自体を返さないような時の
キャンセルでしょ。タイムアウトする前にキャンセルするとか。

951:デフォルトの名無しさん (ワッチョイ f4cb-xaNP)
16/10/06 02:08:33.27 8JIhT6+t0.net
>>924
そもそも要求されたわけでもないのに作るインターフェースって全部変になる
それお前が組みやすい機能しか提供してねーだろ的な

952:デフォルトの名無しさん (アウアウ Sa43-Nuoi)
16/10/06 02:09:29.62 x4N6nEfma.net
レスありがとうございます。
それが、
HttpResponseMessage res = await client.GetAsync(url, _cts.Token);
で本体も取得しているような感じなんです。
ブレークポイントを貼ってみましたが、GetAsyncで10秒くらい止まった後に
string html = await res.Content.ReadAsStringAsync();に移ります。
(ReadAsStringAsyncは一瞬で終わります。)
そしてGetAsync中のCancelが効きません…

953:デフォルトの名無しさん (ワッチョイ d9c9-gCaQ)
16/10/06 11:00:29.01 bdU4oXz50.net
ツールバーのような(MS-IMEのような)フォームを作りたいのですが
どのようにしたらいいのでしょうか。
メインのフォームがあって、最小化するとツールバー化するようにしたいのです。
どなたかよろしくお願いします。

954:デフォルトの名無しさん (ワッチョイ fc5e-lsIp)
16/10/06 18:39:28.71 sSah5I1h0.net
>>939
SizeChangedのイベントで見てFormWindowState.Minimizedだったら望む大きさにフォームのサイズを設定してFormWindowState.Normalにする
戻す時にどういうUIにするかの方がメンドクサイ

955:デフォルトの名無しさん (ワッチョイ c62a-xaNP)
16/10/06 22:36:48.00 ZQZztg7H0.net
>>938
ヘッダだけとるのはオプション指定しないと。

956:デフォルトの名無しさん (ワッチョイ 98d4-lsIp)
16/10/07 16:01:09.05 egEWpdwg0.net
VBをC#に移植してるんですけど
下の拡張メソッドは、C#だとどうやって書きますか

 <System.Runtime.CompilerServices.Extension()>
 Public Function AppendLine(ByRef text As String, ByVal appendtext As String) As String
  text &= appendtext & Microsoft.VisualBasic.vbCrLf
  Return text
 End Function


Stringを拡張してあって
Dim A As String = ""
A.AppendLine("ABC")

とかやると、AにABCが改行付きで入っていく拡張メソッドらしいのですが。

  public static string AppendLine(ref this string value , string text)

ってやろうとしたら叱られてしまいました。

957:デフォルトの名無しさん (ワッチョイ 1030-VEeh)
16/10/07 16:16:11.06 /rv9SwD50.net
これ嫁
URLリンク(msdn.microsoft.com)
refが余計

958:デフォルトの名無しさん (ワッチョイ 6f85-TInN)
16/10/07 16:45:30.93 33b7S5w40.net
それはわかってんじゃねぇの・・
VBはrefつけれる?のかしらんが付いてるからC#ではどうやって同じ事するのかと。

959:デフォルトの名無しさん (ワッチョイ 98d4-lsIp)
16/10/07 16:58:55.89 egEWpdwg0.net
 public static string AppendLine(this string value , string text)
 {
  value += text + '\n';
  return value;
 }

だと

String A = "";
A.AppendLine("ABC");

しても、Aは""のままなんだ。
参照渡しになってないせいかと思ったんだけど。

960:デフォルトの名無しさん (ワッチョイ d919-hgF0)
16/10/07 17:13:45.03 Bnk5ZDGO0.net
C#だと同等のことはできないね
thisとrefは同居できない
諦めて呼び出し元側で代入するしか
// どうでもいい


961:けどvbCrLfと等価なのは\nじゃなくて\r\nだぞ、と



962:デフォルトの名無しさん (ワッチョイ f99f-JwEk)
16/10/07 17:16:48.78 ISMNMdE40.net
AppendLineしたいならStringBuilder使えばいいんでね?

963:デフォルトの名無しさん (アウアウ Sa76-juU9)
16/10/07 18:53:42.82 CEJTQ2Toa.net
むしろVBって>>942みたいなことができるのかw
でも出来てもやりたくないねw

964:デフォルトの名無しさん (ワッチョイ d9c9-gCaQ)
16/10/07 18:56:12.96 1OPRlje/0.net
>>940
レスありがとうございます。
if (FormWindowState.Minimized == true)とかだとダメですね。
FormWindowState.Minimizedの見方から調べてみます。超初心者ですみません。

通常フォームとツールバー型のフォームの2つを使って切り替えようかと考えています。
ボタンで切り替えだとうまくいくんですが、最小化ボタンだとできてません。
なかなか難しいです。ありがとうございました。

965:デフォルトの名無しさん (ワッチョイ fc5e-lsIp)
16/10/07 19:27:53.16 92EIQdHi0.net
>>949
(this.WindowState == FormWindowState.Minimized) な。そのままググればすぐ出てくるはずだが
URLリンク(dobon.net)
URLリンク(dobon.net)
実際最小化ボタンを非表示にして専用ボタン作った方が実装は楽だと思うよ
UIとか具体的な実装方法とかは個人の好みの範疇だけど

966:デフォルトの名無しさん (オッペケ Sr4d-xaNP)
16/10/07 19:29:15.46 wvXFsDA2r.net
なんか急にプログラミングができるようになった

967:デフォルトの名無しさん (ワッチョイ ab49-LThL)
16/10/07 22:59:55.08 SqK/35OL0.net
>>946
Environment.NewLine使うべきだな。

968:デフォルトの名無しさん (ワッチョイ c37b-jLml)
16/10/07 23:13:59.50 2s8k82fa0.net
HTTPのヘッダ直書きしてるならEnvironment.NewLineじゃまずいしケースバイケース

969:デフォルトの名無しさん (アウアウ Sa76-juU9)
16/10/07 23:18:43.10 CEJTQ2Toa.net
>>953
話の文脈にそったこと言わないとダメよw

970:デフォルトの名無しさん (ワッチョイ 353c-lsIp)
16/10/08 00:28:06.65 hitB9rm00.net
初めてC#やりはじめたんですが、
while(1) がエラーになるくさいです。boolはboolとして独立してしか使えないみたいな抽象化になってるのでしょうか?
while(1==1) と書けば動作しましたが、きもいと思ったので良い書き方教えてください。

971:デフォルトの名無しさん (アウアウ Sa76-juU9)
16/10/08 00:33:59.09 O/OBbGYaa.net
>>955
ある程度自分で勉強した上でわからないところを質問するのでないと
10年掛かっても終わらないよw
URLリンク(msdn.microsoft.com)

972:デフォルトの名無しさん (ワッチョイ 05a1-pu+C)
16/10/08 00:34:32.56 1Wan9RxM0.net
むしろCの方が特殊
while (true)

973:デフォルトの名無しさん (ワッチョイ 353c-lsIp)
16/10/08 01:00:48.75 hitB9rm00.net
>>956-957
そうですね
ありがとう

974:デフォルトの名無しさん (ワッチョイ f97b-lsIp)
16/10/08 01:27:55.54 KfBpvv2w0.net
新しい言語を覚える場合、他力本願なやりかたが許されるなら、
知ってる言語で作って、それを誰かに翻訳してもらったやつを一つづつ検索して覚えるのが早い。
問題は誰もそんなことしてくれない事だが。

975:デフォルトの名無しさん (ワッチョイ 6b3c-lsIp)
16/10/08 01:28:56.62 CJmbrFm/0.net
まぁ地道に頑張ります

976:デフォルトの名無しさん (ワッチョイ c3c0-lsIp)
16/10/08 01:48:19.29 mt2d0mm+0.net
今時の言語で数値で真偽判定する奴なんてあるのかよ

977:デフォルトの名無しさん (スフッ Sda8-xaNP)
16/10/08 02:02:00.46 eN8IA8WYd.net
>>952
場合による

978:デフォルトの名無しさん (ワッチョイ 1220-lsIp)
16/10/08 08:45:19.03 vL+1Z5yj0.net
object o = new { test = 1 };

というコードから
testの値を取得したいのですが
どのようにすれば良いのでしょうか?

object o = new { test = 1 };
int a = (int)o.test;

とか悪あがきしてみたのですが
無理でした 👀
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)


979:デフォルトの名無しさん (ワッチョイ 1030-VEeh)
16/10/08 09:51:06.96 i5kDCKwM0.net
全然確認せずに書くけどobjectじゃなくvarで受ければ取れません?
あとdynamicに代入するとか

980:デフォルトの名無しさん (ワッチョイ 1220-lsIp)
16/10/08 10:10:22.36 vL+1Z5yj0.net
>>964
var o = new { test = 1 };
int a = o.test;
で取れました。ありがとうございます

しかし、varとかダックタイピング?で
便利とは思いますが、本質を知らないので
いずれ理解不能なバグに陥りそうで
ちょっと不安に思いました

981:デフォルトの名無しさん (ワッチョイ 1030-VEeh)
16/10/08 10:21:10.63 i5kDCKwM0.net
なら使わなければいいさ
君の問題が解決できなくなっても俺には関係ないしー

982:デフォルトの名無しさん (ブーイモ MM01-pu+C)
16/10/08 10:26:33.50 18NoRfw9M.net
varはローカル変数でしか使えないからトラブルのもとになりようがない

983:デフォルトの名無しさん (オッペケ Sr4d-/Z78)
16/10/08 10:51:20.85 3B0HEkdwr.net
クラス名が無い、見えない
と考えるのが簡明。

984:デフォルトの名無しさん (ワッチョイ 1220-lsIp)
16/10/08 11:05:51.73 vL+1Z5yj0.net
>>966
自分の理解力に対する不安なので、その通りです

便利過ぎる機能の挙動をろくに知らずに頼ると
のちのち危ないかなという自戒の意味で

985:デフォルトの名無しさん (スフッ Sda8-xaNP)
16/10/08 11:09:44.82 1QC8bxppd.net
Visual Studioならvarの上にマウスカーソル持ってきたら実際の型が表示されるでしょ

986:デフォルトの名無しさん (ワッチョイ f4ce-yd9a)
16/10/08 11:27:47.42 fiaM9vLl0.net
pertialって便利だな
C++時代はまさにこれが欲しかったんだ

987:デフォルトの名無しさん (アウアウ Sac5-Nuoi)
16/10/08 11:36:24.37 yHD53V8fa.net
この前のpertial論争が始まるぞw

988:デフォルトの名無しさん (ササクッテロ Sp4d-pu+C)
16/10/08 11:37:00.58 ayps/0ahp.net
>>965
コード的にそのオブジェクトに意味があるなら面倒でもクラスか構造体をちゃんと名前を付けて宣言しとけ
意味がない単なる一時的な入れ物なのならそれが必要のないコードを書け

型が明らかじゃないからとりあえずobjectで受けるなど型の把握が困難なコードは禁止
型を把握でき明確な意図がある場合でも後日見た時にその意図がわかるとは限らないから必ずコメント書いとけ
varは型推論される型を自分ではっきり把握できていて右辺を見たとき誰が見ても型が明らかな場合はガンガン使って良し
コードを遡って探さないと型がわからないようならきちんと型指定して変数宣言しろ
dynamicはWebAPIなどから定義の曖昧なJSONを受けるなどの場合のみ使用可

静的型付け言語に不慣れならこれぐらいの縛りをかけて型を把握する習慣をつけるといいと思うよ

989:デフォルトの名無しさん (ワッチョイ 1030-VEeh)
16/10/08 11:40:55.64 i5kDCKwM0.net
3行以上はキチガイって本当なんだよなあ

990:デフォルトの名無しさん (ワッチョイ ab49-LThL)
16/10/08 11:45:34.34 CGodlZX10.net
>>971
pertialって、何ぞ。スペルミス?

991:デフォルトの名無しさん (ワッチョイ ab49-LThL)
16/10/08 11:57:10.60 CGodlZX10.net
>>965
深く考えずにobject使ってる方が余程問題。

992:デフォルトの名無しさん (ブーイモ MMa8-pu+C)
16/10/08 12:07:12.25 160QOg/GM.net
>>973
ローカル変数の型はコンパイラが認識してればいいよ
ローカル変数の型を明示化しないと開発に支障が出るならオブジェクト志向がうまくできてないんだと思う
それかいちいち見返さないと把握できなくなるくらい長いメソッドや大量の変数を書いているとかね

993:デフォルトの名無しさん (ワッチョイ f4ce-yd9a)
16/10/08 12:10:40.49 fiaM9vLl0.net
partialか
googleさんが指摘してくれたのスルーしてしまった
仮組みだけしたのから何も考えずに着せ替え人形遊びができる辺り評価してる

994:デフォルトの名無しさん (アウアウ Sa76-juU9)
16/10/08 12:27:25.04 2PQahk1ea.net
partの派生語だって普通わかるでしょw
partって言葉も知らなかったのかなw

995:デフォルトの名無しさん (ワッチョイ 21dc-xaNP)
16/10/08 12:31:13.54 vrZNWqvT0.net
C++はメソッドの実装をどこにでも書けるからpartialなんかなくても遥かに柔軟に分割できるでしょ
最悪includeもあるから何でもアリ
C++分かってないだけじゃないのか

996:デフォルトの名無しさん (ワッチョイ 1213-xaNP)
16/10/08 12:39:19.14 UAR+qVnl0.net
>>980
私もそう思いました

997:デフォルトの名無しさん (ワッチョイ 1220-lsIp)
16/10/08 16:33:41.11 vL+1Z5yj0.net
>>976
利用したいメソッドの引数がobjectなので
この辺はやむなくなんです

998:デフォルトの名無しさん (ワッチョイ f4ce-yd9a)
16/10/08 17:20:37.33 fiaM9vLl0.net
パーシャルでまず思い浮かぶのはパーシャル冷凍だし
それとパートは全くの別物だし日本語英語舐めたらあかんよ?

999:デフォルトの名無しさん (ワッチョイ f4ce-yd9a)
16/10/08 17:21:55.16 fiaM9vLl0.net
>>980
C++は実装はどこでも書けるけど、クラス宣言は一緒の場所にかかなあかんでしょ
それよ

1000:デフォルトの名無しさん (ワッチョイ f4ce-yd9a)
16/10/08 17:26:30.91 fiaM9vLl0.net
C++で同じように着せ替え人形やろうとしたら完成した物に手を加えるか別の手段になる
C#のpartialなら色んな着せ替え遊びを元を汚さずできるし、そのまま部分納品できる

1001:デフォルトの名無しさん (ワッチョイ 353c-xaNP)
16/10/08 17:27:27.19 4V/qdcpF0.net
>>983
ばーか

1002:デフォルトの名無しさん (ワッチョイ 353c-yd9a)
16/10/08 18:35:39.75 vKGCFZZ10.net
>>981
次スレ

1003:デフォルトの名無しさん (ワッチョイ e14a-UMne)
16/10/08 19:59:41.17 GFZJqN+P0.net
webBrowserで表示したHP内ソースの下記のURLを自動でクリックしたいのですがどのように書けばよいでしょうか

<iframe src="URL"></iframe>

1004:デフォルトの名無しさん (ワッチョイ c37b-jLml)
16/10/08 20:03:28.06 hcv7mE9D0.net
URLもiframeもクリックするものでは無い
遷移したいならそのiframeをDOMでたどってsrc属性取ってきてNavigateすればいいんじゃね?

1005:デフォルトの名無しさん (ワッチョイ 5cfd-n03B)
16/10/08 20:31:03.30 5ZaOsIWw0.net
広告を自動でクリックしたいのか

1006:デフォルトの名無しさん (アウアウ Sa76-juU9)
16/10/08 21:11:14.28 sdir2poUa.net
>>983
よっ発展途上人

1007:デフォルトの名無しさん (ワッチョイ f97b-lsIp)
16/10/08 21:26:38.44 KfBpvv2w0.net
今からスレ立ててきてやるが、
テンプレの書き換えとか、Partのミスとか直す点はあるか?

30秒待つ

1008:デフォルトの名無しさん (ワッチョイ e14a-UMne)
16/10/08 21:28:25.28 GFZJqN+P0.net
>>989
ありがとうございます。

<a href="URL" target="_blank">url</a>
なら
webBrowser1.Document.Links[0].InvokeMember("Click");
などでクリックできますが、難しいようですね

1009:デフォルトの名無しさん (ワッチョイ f97b-lsIp)
16/10/08 21:33:56.26 KfBpvv2w0.net
スレリンク(tech板)

1010:デフォルトの名無しさん (ワッチョイ fc5e-lsIp)
16/10/08 21:46:09.45 2+oa719n0.net
>>994
スレたて乙

1011:デフォルトの名無しさん (ワッチョイ c63c-xaNP)
16/10/08 22:01:26.17 T/Z20i9z0.net
>>983
> それとパートは全くの別物だし

ちょっとググれば恥をかかなくて済むのに w

partial
⇒ part「部分」+ -al《名詞・形容詞をつくる》
URLリンク(gogengo.me)

1012:デフォルトの名無しさん (ワッチョイ c63c-xaNP)
16/10/08 22:41:35.53 T/Z20i9z0.net
>>963
もう解決してるみたいだけど
> object o = new { test = 1 };
> int a = (int)o.test;
なら
var a = o.GetType().GetProperty("test").GetValue(o);
でとれる

1013:デフォルトの名無しさん (ワッチョイ f97b-lsIp)
16/10/09 04:08:54.25 nhxFjm5j0.net
うめとこか

1014:デフォルトの名無しさん (ワッチョイ fc5e-lsIp)
16/10/09 09:02:00.80 G17UML8q0.net
次スレも少し書き込んでくれ
こっちは埋めとく

1015:デフォルトの名無しさん (ワッチョイ fc5e-lsIp)
16/10/09 09:05:06.47 G17UML8q0.net
埋め

1016:デフォルトの名無しさん (ワッチョイ fc5e-lsIp)
16/10/09 09:06:05.91 G17UML8q0.net
次スレはこちら
ふらっと C#,C♯,C#(初心者用) Part125
スレリンク(tech板)

1017:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch