- 1 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 14:57:21 ]
- このスレッドは
「どんなにくだらないC#プログラミングに関する発言でも誰かが優しくレスをしてくれるスレッド」です。 ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問など、 勇気をもって書き込んでください。 内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますがご了承下さい。 >>980を踏んだ人は新スレを建てて下さい。 >>980が無理な場合、話し合って新スレを建てる人を決めて下さい。 前スレ ふらっとC#,C♯,C#(初心者用) Part43 pc12.2ch.net/test/read.cgi/tech/1248573707/
- 848 名前:デフォルトの名無しさん mailto:sage [2009/09/16(水) 17:14:02 ]
- consセルでおk
- 849 名前:デフォルトの名無しさん mailto:sage [2009/09/16(水) 17:22:27 ]
- 2008Expressでjitを使えるようにする方法はないものでしょうか?
- 850 名前:デフォルトの名無しさん mailto:sage [2009/09/16(水) 17:24:02 ]
- Just In Time = ちょうどそのとき
そのときになにをしたいの?
- 851 名前:デフォルトの名無しさん mailto:sage [2009/09/16(水) 17:25:39 ]
- 俺用語使われるとエスパーの出番しかなくなって
- 852 名前:デフォルトの名無しさん mailto:sage [2009/09/16(水) 17:37:42 ]
- >>850
どうでもいいけど、英語圏でjitはもはや動詞として使われてるよw JIT - JITs - JITted - JITting 意味はもちろんJITコンパイルすること。対義語はto AOT
- 853 名前:デフォルトの名無しさん mailto:sage [2009/09/16(水) 17:38:18 ]
- で?
- 854 名前:デフォルトの名無しさん [2009/09/16(水) 17:40:43 ]
- だからなんなんっていう。
- 855 名前:デフォルトの名無しさん mailto:sage [2009/09/16(水) 17:43:59 ]
- 849にしかわかりません
- 856 名前:デフォルトの名無しさん mailto:sage [2009/09/16(水) 17:45:29 ]
- そうすると英語圏的にはトヨタ完全敗北なのか
- 857 名前:デフォルトの名無しさん mailto:sage [2009/09/16(水) 18:50:06 ]
- その通り
- 858 名前:デフォルトの名無しさん mailto:sage [2009/09/16(水) 19:28:48 ]
- JITって見てこれを思い出したけど間違ってたみたいだね。
Just-In-Time デバッグ: msdn.microsoft.com/ja-jp/library/5hs4b7a6%28VS.80%29.aspx
- 859 名前:デフォルトの名無しさん mailto:sage [2009/09/16(水) 23:39:15 ]
- >>814
亀レスで、もう数学板の方でレスついちゃってるかもしれないけど、一応 双一次変換のアナログ周波数→ディジタル周波数の計算式じゃない?
- 860 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 00:24:32 ]
- なんとなく交流理論でよく使う極座標表示関連の式のように思うけどね。
- 861 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 00:35:24 ]
- >>860
ufcpp.net/study/digital_filter/bilineartrans.html この双一次変換の周波数特性の式に、ωa = exp f を入れた式かと。 対数周波数(= オクターブ)を双一次変換でディジタル化したときの特性周波数だなぁ、多分。
- 862 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 00:36:11 ]
- atan だから逆か・・・
- 863 名前:デフォルトの名無しさん [2009/09/17(木) 05:01:07 ]
- ジェネリック配列にテキストボックスのテキストを改行区切りで
= Text.Replace("\r", "").Split(new char[] { '\n' }); としたいのですが、どのように処理すればよいでしょうか?
- 864 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 05:09:15 ]
- ジェネリック配列?
ジェネリックも何もString.Splitの左辺はstring[]しかありえないが?
- 865 名前:863 mailto:sage [2009/09/17(木) 05:19:34 ]
- ありがとうございます。
string[]しか無理なのですね・・ 動的に配列を追加していきたいもので・・・
- 866 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 05:25:03 ]
- もうちょっと広い範囲で何をしたいのか書いた方がいいかも
List<string>にstring[]をAddRangeすることはできる もちろんList<string[]>にAddすることも
- 867 名前:863 mailto:sage [2009/09/17(木) 05:43:05 ]
- AddRangeで実現することができました!
ありがとうございます!! 勉強不足ですいません!
- 868 名前:デフォルトの名無しさん [2009/09/17(木) 10:23:27 ]
- C#で予め用意された値型構造体やString型クラスは
=演算子で構造体またはクラス変数にそのままメンバ値を代入できますよね これってユーザ定義構造体またはクラスで実現できますか 調べてみたら、=演算子のオーバーロードはできないみたいだし、 インデクサは配列メンバにしかアクセスできないし。。。 プロパティでpublic this{ get; set; }みたいできたらいいんですが。。。
- 869 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 10:26:02 ]
- はぁ?
- 870 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 10:28:10 ]
- もしかしてリテラルが使いたいってこと?
string x = "str"; int x = 100; こういうの 暗黙の型変換(implicit operator)を実装すれば Hoge x = 1; とかできるようになる
- 871 名前:869 mailto:sage [2009/09/17(木) 10:31:44 ]
- ああそういうことですか。煽って申し訳ない。
- 872 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 10:35:13 ]
- >>868
勘違いしてそうだけど string x = "str" って,xが指してるStringオブジェクトのメンバを変更してるんじゃなくて 新しいStringオブジェクトを作ってその参照をxに代入してるんだよ
- 873 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 10:35:41 ]
- え?そうなの?
じゃあやっぱ煽ろうかな。
- 874 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 10:40:40 ]
- 文字列リテラルで新しいオブジェクトはまずい表現だがまあ初心者スレだからいいか。
- 875 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 13:53:28 ]
- >>863
Textbox.Lines
- 876 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 14:08:49 ]
- このようにしてイメージリストにアイコンを入れてみたんですが
これを取り出す方法が分からないので教えてください。 imageList2.Images.Add("rar", appIcon);
- 877 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 14:12:50 ]
- imageList2.Images["rar"]
- 878 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 14:15:21 ]
- >>877
ありがとうございます。無事出来ました。
- 879 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 16:51:07 BE:185292342-2BP(85)]
- >>874
可能です。 以上。 はい次の方。
- 880 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 17:41:44 ]
- listViewで最後の項目を選択したいです。
listBoxの場合には、 listBox.SetSelected(listBox.Items.Count -1, true); でできるのですが、listViewの場合には、どのようにしたらよいでしょう?
- 881 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 17:50:32 ]
- Itemsから最後の取得してSelected
- 882 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 18:12:41 ]
- listView.Items.のあとに、選択系のそれらしきものがないんですけど…。
- 883 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 18:15:21 ]
- ListViewItemのプロパティ
- 884 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 18:27:45 ]
- なんか江戸っ子みたいな一言居士な方ですね。
そうぶっきらぼうにいわず、プロパティのどの項目か、 もうすこし手順まで教えていただけないでしょうか。 listViewのItemsのプロパティを見ると、 (コレクション)とか書いてあって、 ここではなさげだし、セレクト系の項目も見当たらないし。
- 885 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 18:33:48 ]
- 何甘えてんの
- 886 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 18:41:00 ]
- >>884
横からだが、>>881で答え出てるじゃん それで分からないって言うから>>883でListViewItemのプロパティってとこまで教えてもらってるのに、何故理解できないのか。 とりあえずMSDNのListViewItemの項目読んで来い。
- 887 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 19:07:50 ]
- みんな優しいのな。 こういう人には、さっさと教えて勉強する機会を奪いたくなる。
listView1.Items[listView1.Items.Count - 1].Selected = true; listView1.Select();
- 888 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 22:56:13 ]
- MSDN読めと一言いえば済むよ
- 889 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 23:49:53 ]
- MSDNは俺の読め
- 890 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 01:33:13 ]
- >>887
ありがとうございます。無事出来ました。
- 891 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 03:40:59 ]
- どういたしまして。
- 892 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 04:11:06 ]
- C#のメソッドをネイティブDLLにコールバック関数として渡したいので
そのメソッドのデリゲートを渡したところ一旦は動くのですが、 しばらくするとGCで移動させられて呼び出し時にエラーが発生するようになります。 そこでデリゲートをGCHandle.AllocでPinnedにしようと思ったんですが、 デリゲートはblittableでないからとArgumentExceptionが発生します。 どうすればDLLに固定されたアドレスを渡せるんでしょうか。
- 893 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 07:45:04 ]
- デリゲートインスタンスをローカル変数じゃなくてフィールドに置くようにしとけばいいよ
- 894 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 07:50:24 ]
- 言っとくがエラーになるのは固定されてないからとかそういう問題じゃないよ
デリゲートが解放されないように参照をちゃんと保持しとけばいいだけ
- 895 名前:デフォルトの名無しさん [2009/09/18(金) 12:09:00 ]
- 一枚の大きな画像が複数のタイルファイルに別れている場合、
タイルファイルを呼び出して大きな画像を作る前処理が必要です。 そして表示領域が移動したとき、領域からはずれたタイルを破毀し、必要なタイルだけを補完する必要があります。 こういう場合とっておきのスマートな処理方法ってありますか? 定石のようなものやクラス構成のヒントだけでも教えてもらえるとありがたいです。
- 896 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 12:17:56 ]
- バカじゃねーの
- 897 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 12:21:47 ]
- 自分の歩いた道は既に誰かが通っていて、
常に舗装されている(スマートな解法が存在する)と思ってる奴がいるよね。
- 898 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 12:24:03 ]
- 煽りはうざいから消えてくれ
ちゃんとしたレスする気がないならスルーしろ
- 899 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 12:25:50 ]
- 嫌だね
- 900 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 12:26:45 ]
- スレタイ読めよクズが
- 901 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 12:27:07 ]
- ┐('〜`;)┌
- 902 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 12:28:00 ]
- こういうの定期的に湧くね。
バイオリズムか何かで虫の居所が悪い周期でもあんのかしら。
- 903 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 12:28:15 ]
- テンプレ読めクズ
- 904 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 12:30:14 ]
- くずがくずとののしるのですか
- 905 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 12:32:11 ]
- 黙れクズ
- 906 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 12:33:32 ]
- hinagis.blog33.fc2.com/blog-entry-31.html
俺ど素人だから分からんがここに書いてあるんじゃない?
- 907 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 12:37:34 ]
- 平和だな
- 908 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 15:29:24 ]
- >>893-894
ありがとうございます。 できました。 でもこれって移動しない保証はあるんですか。 それとも保証は無いけど実質移動はしないということですか。
- 909 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 15:48:53 ]
- >>908
今どういうコード書いてあるか見せてみろよ。 移動がどうこう言ってるようじゃ何か間違ってるわ
- 910 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 16:05:24 ]
- 間違ってねーよ
できたつってんだろ
- 911 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 16:08:13 ]
- 正直よく分からんが、取り敢えずこの辺の議論でも読んでみたら?>デリゲートの固定
ttp://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=36275&forum=7
- 912 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 16:19:34 ]
- 懐かしいな…
そこでも結論出てたと思うが、デリゲートをアンマネージに渡すと、 マーシャリングのためのサンクが作られる。 このサンクが生きてる限り、アンマネージからの呼び戻しは正しく動作する。 サンクはデリゲートがGCで解放されると死ぬ。 以上、デリゲートの固定とか関係ない。
- 913 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 16:20:44 ]
- Marshal.GetFunctionPointerForDelegateにはGCが回収しないようにしておけばいいと書いてあるから
固定とか不要だと思うけど
- 914 名前:913 mailto:sage [2009/09/18(金) 16:21:24 ]
- すまん、リロードしてなかった
- 915 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 16:38:53 ]
- >>911-914
ありがとうございます。 参考になりました。
- 916 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 16:42:24 ]
- サンクが作られるのか
サンクス
- 917 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 17:21:51 ]
- C++/CLIからC#に来るとC++のpin_ptr<T>とかのせいで誤解するよね
- 918 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 17:34:34 ]
- しないです
- 919 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 17:49:51 ]
- するです
- 920 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 17:52:20 ]
- VBからくるとC#の{ ... }ブロックはべんりねん
- 921 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 17:56:01 ]
- VBが不便なだけ
- 922 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 18:36:23 ]
- >>895
ゲームのマップ? C#にこだわらなければサンプルはそこらへんに腐るほど落ちてるぞ 一回書けば二度と触らない部分だろうからスマートとかどうでもいい
- 923 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 18:51:23 ]
- >>917 C++にはpin_ptrなんか無いぞ
C++のせいにするなー!
- 924 名前:デフォルトの名無しさん [2009/09/18(金) 19:10:51 ]
- >>922
あざーす 一枚のタイルがどこまで動いたか調べて一斉にタイルを書き換える方法が見つかりました まー結局ループしてコピーなんですね OOPっぽくタイルクラスに移動値(x、y)を与えてやってみます
- 925 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 19:20:35 ]
- タイルをクラスにするなら,表示領域外のタイルオブジェクトも保持するようにした方がスマートだよ
表示領域外に出たタイルオブジェクトは描画リソースだけ破棄するようにする 大きな画像全体を仮想的に保持しといて,必要な範囲だけ描画を有効にするイメージ
- 926 名前:デフォルトの名無しさん [2009/09/18(金) 21:41:47 ]
- >>925
ありがとうございます ライフゲームのセルみたいな感じですね? わかります C++で最初に書いたのを思い出しました
- 927 名前:デフォルトの名無しさん [2009/09/19(土) 08:38:42 ]
- 商品注文画面を作成しています。
a. 検索ボックスに検索したい商品の名前を入力しはじめると、 返還前であっても該当する商品が右側の窓に表示されるようにしたいのですが、 返還前の文字列を取得し、検索結果を表示するにはどうすればいいでしょうか。 b. 発注者の氏名を入力したら、自動で発注者のフリガナを下のボックスに入れたいと思っています。 これもaと同じ要領で返還前文字を拾うことができるでしょうか。 よろしくお願いします。
- 928 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 08:45:32 ]
- いやです
- 929 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 09:05:11 ]
- >>924
>>925 この2レスだけ読むと滅茶苦茶重くなりそうに見える。
- 930 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 09:30:51 ]
- それほどでもない
- 931 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 10:11:13 ]
- >>927
IMEで入力中の文字列を取得すればいいだけじゃん
- 932 名前:デフォルトの名無しさん [2009/09/19(土) 10:12:45 ]
- >>929
タイル(x1,y1)が(x3,y5)へ移動した場合 タイルのインデックスを書き換えるようにした方がいいですかね? タイルの座標が表示領域(およびバッファ領域)を超えた時点でインデックスが削除され インデックス(0,0)から順に描画、タイルがインデックス上に存在しない場合、インデックスを消したタイルを再利用 クラス タイル { string タイル座標; bitmap タイル画像; } クラス タイルコンテナ { }
- 933 名前:デフォルトの名無しさん [2009/09/19(土) 10:13:58 ]
- >>932
途中で投稿してしまいました orz タイルコンテナでタイルを配列かリストで管理する感じです
- 934 名前:デフォルトの名無しさん [2009/09/19(土) 10:16:34 ]
- このとき、タイルはタイル領域のサイズを知っていれば
移動量を与えるだけで自分が領域を外れたかどうか判断できると思うのですが タイルコンテナクラスのプロパティをタイルクラスから参照する方法ってありましたか? 引数で与えてやればいいだけですが
- 935 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 10:40:22 ]
- >>932
タイルということは敷き詰めるんだよな? > タイル(x1,y1)が(x3,y5)へ移動した場合 この時点で無駄でしょ。 タイルが移動するオブジェクトである必要は無い。 2次元配列(パフォーマンス的には配列の配列か)、視点(カメラ)、リソースのコンテナ、あと表示領域分の別バッファ…このあたりか 動くのは自分或いは世界ね。 怠惰なオラは>>924以前の流れは読んでないので的はずれだったらすまぬ。 ノシ
- 936 名前:デフォルトの名無しさん [2009/09/19(土) 11:32:09 ]
- >>935
なるほど スピード重視だとそうなるんですね タイル空間の座標を全タイル分用意 配列の配列には画像へのポインタ こんな感じすか? 見える範囲をキャタピラみたいなもんに描画するのと たぶん画像のポインタの切り替えや読み込みは同じなんで ループするタイルの枚数が少ない方が早い気がしますが タイルの総数が少ないと配列の方が早いんですね? 参考になりました
- 937 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 11:48:58 ]
- > 配列の配列には画像へのポインタ
もっと単純にintでもいい もしxna+xboxなら値型のほうがいいから、この場合複雑なものが入るときはstructのほうがいい > タイルの総数が少ないと配列の方が早いんですね? そうじゃないです。常に描画するのは差分だけなので描画回数等から差が出る。 別個のオブジェクトとして扱うとその最適化に悩むことになると思われる。
- 938 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 12:25:06 ]
- なーんか>>936の考えがよくわかんないね。
タイルが移動とか、どうしてそういう風に考えるんだろう。 普通に考えれば、例えば表示領域のサイズがタイルを1としたときn×mだとしたら、 (n+2)×(m+2)のサイズのバックバッファを用意して、あとは球面スクロールを 実現するために(1)バックバッファの更新方法と(2)バックバッファからのBitBltの方法 を考えるだけじゃないの?
- 939 名前:デフォルトの名無しさん [2009/09/19(土) 14:17:49 ]
- >>937
ありがとうございます。 >単純にintでもいい なるほど画像番号みたいなものですね >別個のオブジェクトとして扱うとその最適化に悩むことになると思われる。 もうすでに悩んでいるようです 言われてみて実際のサイズを考えて見たら、理論上はタイルを1として 35万×35万くらいのマップサイズになる可能性がわかりまして・・・ >>938 ありがとうございます。 こういう話に慣れてないのですみません。 単なる描画と割り切ってしまえば簡単ですね。 タイルファイルをオブジェクトとして扱わない方向で考えて見ます。
- 940 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 16:40:40 ]
- MDI フォームを作り、子ウインドウを最大化して使用しています。
ボタンをつけて、アクティブなウィンドウを変更できるようにしたのですが、 変更する際に、一瞬だけ最大化されていないウィンドウが表示されてしまいます。 スムースに切り替える方法はないでしょうか?
- 941 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 17:02:21 ]
- またそういう「ナイアル厨ホイホイ」な質問を・・・
まあ何か方法はあったはず。 MDIは他にもしょうもないバグが満載だから困っちゃうね。
- 942 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 18:02:03 ]
- 子ウインドウが常に最大化されてるんだったらMDIでなくてよくね
Panel貼っといて中身を差し替えたら
- 943 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 21:19:52 ]
- C#のお勧め書籍を教えてください。
オライリーの初めてのC#は読みましたがいまいち内容が足りない感じです。 もう少しオブジェクト指向など高度なことが学びたいのです。
- 944 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 21:54:05 ]
- おまえ、オブジェクト指向いいたいだけ違うんかと。
- 945 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 22:13:49 ]
- デザパタ本でも読めば?
- 946 名前:デフォルトの名無しさん [2009/09/20(日) 02:58:43 ]
- >>931
そのやり方が何を見ても分からないんです。 どのようにすれば、IMEから確定前の入力を拾うことができるのでしょうか?
- 947 名前:デフォルトの名無しさん mailto:sage [2009/09/20(日) 06:28:31 ]
- >>946
.NETのクラスライブラリ(BCL)にはない。BCLにあるのはIMEのOn/Offくらい。 Win32APIを使うことになるが結構面倒で説明しきれない。 imm.h / imm32.lib でぐぐればいくつか出てくると思うよ。
- 948 名前:デフォルトの名無しさん mailto:sage [2009/09/20(日) 10:56:44 ]
- 極東向けのおまけパッケージに、ふりがな取得する奴はあった気がする。
|

|