1 名前:デフォルトの名無しさん (ワッチョイ f97b-lsIp) mailto:sage [2016/10/08(土) 21:33:26.22 ID:KfBpvv2w0.net] 「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。 他のスレッドでは書き込めないような低レベルな質問、 質問者自身なんだか意味がよく分からない質問、 ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。 内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。 なお、テンプレが読めない回答者は邪魔なので後述のC#相談室に移動して下さい。 C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください >>980 を踏んだ人は新スレを建てて下さい。 >>980 が無理な場合、話し合って新スレを建てる人を決めて下さい。 ■前スレ ふらっと C#,C♯,C#(初心者用) Part124 echo.2ch.net/test/read.cgi/tech/1471004887/ ■関連スレ C#, C♯, C#相談室 Part91 echo.2ch.net/test/read.cgi/tech/1467142749/ ■コードを貼る場合は↓を使いましょう。 ideone.com/ https://dotnetfiddle.net/ ■情報源 https://msdn.microsoft.com/en-us/library/gg145045.aspx referencesource.microsoft.com/ VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
500 名前:デフォルトの名無しさん (ワッチョイ a70d-Cgco) [2016/11/15(火) 17:50:32.92 ID:NoTRkZnD0.net] >>473 日本語です
501 名前:デフォルトの名無しさん (ワッチョイ 4b49-VsRF) mailto:sage [2016/11/15(火) 22:28:52.68 ID:YqUWOmsB0.net] >>471 Resource.resxを使うかResourceDictionaryを使うかは好み。 Resource.resxはGUIで設定できる。ロードする部分はシステムのロケール依存で良ければ自動。サテライトアセンブリが生成される ResourceDictionaryはxamlを自分で記述する。ロードする部分も自分で作成。サテライトアセンブリが生成されない 個人的にはResource.resxの方が好きかな。 で、動的に切り替えって、起動時に切り替えるだけじゃ足りない? 任意のタイミングで既存のGUIもぱっと切り替えるのが必要だとすると、上記だけじゃ駄目で、 ラッパー的なクラスを作成して、それに対してバインディングするようにする必要がある。
502 名前:デフォルトの名無しさん (ワッチョイ a70d-Cgco) [2016/11/15(火) 23:15:19.81 ID:NoTRkZnD0.net] >>494 どちらとも動的に切り替えるところまでは作りました どっちにするかまだ迷っています どちらが世界的に主流でしょうか?
503 名前:デフォルトの名無しさん (ワッチョイ b3dc-PwKp) mailto:sage [2016/11/15(火) 23:23:38.02 ID:r0bdrrlQ0.net] >>495 WPF自体が主流には程遠いから好きにしろとしか
504 名前:デフォルトの名無しさん (ワッチョイ 3703-M1Ou) mailto:sage [2016/11/16(水) 14:46:22.40 ID:oJqix3AL0.net] ArrayListを使用した2次元配列を構築したいと考えております。 データは「実験項目」、「測定値」でファイルから読み出します。 一つの「実験項目」に対して任意数の「測定値」があり、任意数の「実験項目」があります。 ファイルを読み出さないとそれぞれの要素数がわからないため動的配列を使いたいと思っています。 「実験項目」、「測定値」共に1,000以内程度の予想です。 ArrayListは扱えていると思っているのですが2次元にする方法がよくわかりません。 ご教示いただけないでしょうか。よろしくお願いします。
505 名前:デフォルトの名無しさん (アウアウオー Saff-IeI3) mailto:sage [2016/11/16(水) 15:20:15.99 ID:Nmwy7smwa.net] >>497 ArrayListは10年以上前に役割を終えた旧式だからもう使っちゃだめ 代わりにList<T>でも使って List<T>も2次元にはできないが、そもそも2次元にする必要がない - TestItem(実験項目)にMeasured(測定値)のリストList<Measured>を持たせて、 - TestItemのリストList<TestItem>を作る これでOKでしょ 知らんけど
506 名前:デフォルトの名無しさん (ササクッテロレ Sp2f-9MLS) mailto:sage [2016/11/16(水) 15:31:15.35 ID:E4kD/LBwp.net] >>497 TestItem(実験項目)にMeasured(測定値)のリストを持たせたくない場合はDictionary<TestItem,List<Measured>>とか
507 名前:デフォルトの名無しさん (ワッチョイ 3703-M1Ou) mailto:sage [2016/11/16(水) 16:11:42.19 ID:oJqix3AL0.net] >>498-499 ご教示ありがとうございます。 やはりArrayListは非推奨なのですね。 List、Dictionaryを勉強してみます。
508 名前:デフォルトの名無しさん (オッペケ Sr2f-WFrU) mailto:sage [2016/11/16(水) 20:05:48.43 ID:qGX/+c5Jr.net] 何故に、そんなレガシーな亡霊がこの世に??
509 名前:デフォルトの名無しさん (ブーイモ MMef-9MLS) mailto:sage [2016/11/16(水) 20:19:51.08 ID:gtmrvLDzM.net] リファクタリングは悪 回帰テスト嫌だからコピペして新規追加しろ 日本はそういう文化だから理解しがたいレガシーコードで溢れかえる
510 名前:デフォルトの名無しさん (ワッチョイ 4bc0-WVKM) mailto:sage [2016/11/16(水) 20:38:27.57 ID:MMds4sI/0.net] >>501 キーワードでググったら上位にくるんじゃね あの手の骨董品コードが残り続けるのは本当害悪でしか無いわ
511 名前:デフォルトの名無しさん (ワッチョイ d3d6-teht) mailto:sage [2016/11/16(水) 20:49:59.04 ID:Ws6HNRv60.net] 文句はいつまでも互換性を持たせているマイクロソフトに言え
512 名前:デフォルトの名無しさん (ワッチョイ 273c-WVKM) mailto:sage [2016/11/16(水) 20:57:40.76 ID:MeLHc+gy0.net] 初心者です。 先日測定機のプログラムを作りました。 データ取得の処理中に進捗状況を表示させたくなりました。 フリーズしてるのと勘違いされないようにしたいわけです。 少し調べてみたら、どうやらマルチスレッドなるもの 使うようなんですが、これについて優しく書かれている サイトなどあればお教えいただければうれしいです。 よろしくおねがいします。
513 名前:デフォルトの名無しさん (ワッチョイ b3dc-PwKp) mailto:sage [2016/11/16(水) 21:08:39.93 ID:1s2sSz8X0.net] >>505 自分でThreadやTaskを明示的に作って使う必要があるケースは少ない 再現困難なバグを引き起こしやすいから、マルチスレッドを明示的に使うのは非同期プログラミングに慣れないうちはなるべく避けた方がいい シリアルか独自のSDKがあるのか知らないけど、何かの外部装置からデータ取ってるなら非同期で取るAPIは用意されてるだろ? もし同期APIしか用意されてない糞SDKなら仕方ないが、そうでない限りは用意された非同期APIを使うことを優先したらいい データをどうやって取ってるのかをお前が晒せばもっと具体的なアドバイスもできる
514 名前:デフォルトの名無しさん (ワッチョイ 37dc-WVKM) mailto:sage [2016/11/16(水) 21:10:52.22 ID:QT5715if0.net] >>505 時間のかかる処理をバックグラウンドで実行するには?[2.0のみ、C#、VB] − @IT www.atmarkit.co.jp/fdotnet/dotnettips/436bgworker/bgworker.html .NET開発における非同期処理の基礎と歴史 − @IT www.atmarkit.co.jp/fdotnet/chushin/masterasync_01/masterasync_01_01.html
515 名前:デフォルトの名無しさん (ワッチョイ cb94-5NgJ) mailto:sage [2016/11/16(水) 22:04:51.69 ID:PcfUB0DB0.net] 上のページはBackgroundWorkerの話で古すぎるし、 下のは歴史から説きおこしてるから最初から読むと長すぎる async awaitについて書いてあるここ↓くらいから読むのがいいかと www.atmarkit.co.jp/fdotnet/chushin/masterasync_02/masterasync_02_01.html 非同期API使うにしても、async await がわかってないと辛いだろうし
516 名前:デフォルトの名無しさん (アウアウオー Saff-IeI3) mailto:sage [2016/11/16(水) 22:20:31.36 ID:5Ihw572qa.net] そもそも非同期とは何かを理解せずにいきなりそんなの読んで理解できると思えませんがw
517 名前:デフォルトの名無しさん (ワッチョイ b3dc-PwKp) mailto:sage [2016/11/16(水) 23:41:29.23 ID:1s2sSz8X0.net] 初心者ならまずはEAPから入るのがいいんじゃないか awaitみたいな黒魔獣と違って仕組みが単純明快だし、使う側からすれば完全にシングルスレッドで非同期ができる 排他処理だのデッドロックだのいきなりマルチスレッド特有の問題を抱え込むより、 まずは純粋に非同期プログラミングのところだけを抽出して順番に理解していけばいいと思うよ
518 名前:デフォルトの名無しさん (ワッチョイ 2376-NcFo) mailto:sage [2016/11/16(水) 23:57:52.40 ID:cEthX6dM0.net] もっと単純に↓のworkメソッドの中で10%ごとぐらいにラベル表示とかするだけの話じゃないかな www.atmarkit.co.jp/ait/articles/0506/17/news111.html まずは目的達成を
519 名前:デフォルトの名無しさん (ワッチョイ 9c7b-XpIe) mailto:sage [2016/11/17(木) 00:43:08.63 ID:KQ/jS2NF0.net] ベジエ曲線の質問なんですが P1(10,10) P2(10,40) P3(40,10) P4(40,40) このような4点のベジエがあったとして、この放物線のP4の延長線を書きたい場合、 どのようにすればいいのでしょうか?
520 名前:デフォルトの名無しさん (ワッチョイ 3f49-YqEk) mailto:sage [2016/11/17(木) 00:56:22.10 ID:ViKAooID0.net] Invoke()も今は推奨されないんじゃないかなぁ
521 名前:デフォルトの名無しさん (アウアウオー Sa36-MfQN) mailto:sage [2016/11/17(木) 01:43:36.99 ID:ypT0aoV/a.net] >>512 よく知らんけど、終了点の延長戦の方向は制御点から終了点向かう ベクトルに等しいはずだから、後は簡単な高校数学じゃないの?
522 名前:デフォルトの名無しさん (ワッチョイ 3faf-N7ik) mailto:sage [2016/11/17(木) 02:39:29.89 ID:Dxu6gLWd0.net] スレッド周りは古い情報が残りまくりでどうしたらいいのか難しすぎ 非同期処理とかで検索すると普通にasync awaitが見つかるけどプログレスバーとかで検索すると未だにBackgroundWorkerを使うとか書いてるから困る
523 名前:デフォルトの名無しさん (ワッチョイ 9c7b-XpIe) mailto:sage [2016/11/17(木) 03:14:03.30 ID:KQ/jS2NF0.net] >>514 自分の説明が下手でも仕分けないのですが、 要するに2次曲線をベジエ曲線を使って描画し、 曲線の終点の延長を追記で描画したいということなのですが
524 名前:デフォルトの名無しさん (ワッチョイ b5dc-2XGH) mailto:sage [2016/11/17(木) 07:07:26.21 ID:iGNJFpBr0.net] >>516 端点とそこでの一次の傾きさえ一致してれば滑らかに繋がってるように見える。で、それは514で答えが出てる。 二次の傾きには任意性があって、どう決めたら最も美しいかはあくまでお前の感性の問題だ。 その感性を数学的に定義するのはお前の仕事。それができたら答えは出たようなもんだろ。
525 名前:デフォルトの名無しさん (ワッチョイ 7c7b-8L7G) [2016/11/17(木) 07:33:08.85 ID:B+vLCAoF0.net] >516 俺もそれ興味あるな。でもペジェー曲線を描く関数は簡単にわかるだろ。 それをプログラム的にどう実現するかが知りたいってことだよね。 バーンスタイン基底関数のブレンディング関数ではN点の式になってるが、実際には n点でかいたベジェにn+1点を書く場合全部書き直すのは不経済だよな。 bz = new Bezier(p1,p2); bz = bz.add(p3); bz = bz.add(p4); bz = bz.add(p5); bz = bz.add(p6); foreach pp in bz{ bz.pset(whiteColor, pp.xl,pp.yl);//前のポイントを消す bz.pset(RedColor, pp.x,pp.y);//今回を書く } こんな感じじゃないか? グラフィックはやったことないから知らんけど。わからんな前のラインを消すのが 難しいな。
526 名前:デフォルトの名無しさん (ワッチョイ 7c7b-8L7G) [2016/11/17(木) 07:37:55.62 ID:B+vLCAoF0.net] まあpsetよりもplineだろうな。普通のCADはベクトルで管理していて、書き直しは やはり、前のラインを記憶していて、背景色で上書きして消すのだと思うよ。
527 名前:デフォルトの名無しさん (ワッチョイ 7c7b-8L7G) [2016/11/17(木) 07:46:11.48 ID:B+vLCAoF0.net] bz = new Bezier(p1,p2); bz = bz.add(p3); bz = bz.add(p4); bz = bz.add(p5); bz = bz.add(p6); bz.write(red, Style1); これでいいや、制御点はaddするときにわかってるからね。 書くときにベクトルは全部記憶してるからwriteするときに消して書けばいい。 しかし、背景色が違うところをまたがるときはどうすんの? って問題があるな。
528 名前:デフォルトの名無しさん (ワッチョイ 7c7b-8L7G) [2016/11/17(木) 08:20:53.64 ID:B+vLCAoF0.net] >516 ツールはなに? DirectXとか? どういう環境でかこうとしているんかで かなり違うと思う。 DirectXだったら関数についてるんじゃない? 環境が正確にわかればサンプルを 書いてあげるよ。もしわからなければ、、、
529 名前:デフォルトの名無しさん (ワッチョイ 9fcf-RAPI) [2016/11/17(木) 08:43:40.73 ID:UCWuOxD40.net] c#でluaを使うためのパッケージは誰がよろしいでしょうか?
530 名前:デフォルトの名無しさん (スププ Sdb8-RUi6) mailto:sage [2016/11/17(木) 09:34:37.15 ID:Nr9kHWsUd.net] 背景の
531 名前:`画はXor Notの色じゃだめなぬ? [] [ここ壊れてます]
532 名前:デフォルトの名無しさん (ワッチョイ 7c7b-8L7G) [2016/11/17(木) 11:04:15.91 ID:B+vLCAoF0.net] >背景の描画はXor Notの色じゃだめなぬ? だめ。 psetなら隣の色を拾って背景代わりにするとできるが、、、lineだと背景の色を 覚えておかないとできないね。特に切り替わりのあるところ毎に背景を記憶して 覚えておかないとできないね。 BackColorXorline()なんて関数があって背景は別レイヤで記憶していてくれれば できるけど。そんなのがあるんだろうな。きっと。 グラフィックコントローラの機能として何枚かのレイヤがあるんだろうね。でないと 移動するごとに大量のベクトルの書き直しとか間抜けすぎるものね。 だからレイヤーを指定して書き込みできるんじゃなかろうか?
533 名前:デフォルトの名無しさん (オッペケ Sra9-2XGH) mailto:sage [2016/11/17(木) 13:02:06.96 ID:lS45HIXqr.net] LINQって使うとハマりそうなところって非同期だから返ってくる結果がよくからん順番になるところと可読性が悪いところ? メリットは少なめなメモリで動くってだけかな? Rxとかは便利そうって思えるけど
534 名前:デフォルトの名無しさん (アウアウカー Sa41-2XGH) mailto:sage [2016/11/17(木) 13:11:56.85 ID:3nQkkv32a.net] LINQって非同期実行じゃなくて遅延評価じゃないの? 当然順番は変わらないし 更に言うとLINQの最大の利点て可読性の向上だと思ってたんだが…
535 名前:デフォルトの名無しさん (ワッチョイ 9f94-Ctj4) mailto:sage [2016/11/17(木) 13:34:27.15 ID:JueYqnTL0.net] 返ってくる順番が不確定なのはPLINQだね (AsOrderd()を使えば順番を維持させることもできるけど) LINQで可読性が下がるというのは、もしかして、ラムダ式に慣れてないだけでは…
536 名前:デフォルトの名無しさん (ワッチョイ 7c7b-8L7G) [2016/11/17(木) 13:45:17.61 ID:B+vLCAoF0.net] >526 遅延って意味がおかしいんじゃない。クエリを書いただけでは実行しないってこと を遅延っていってるんだろうか? そんなの当たり前のように思えるが、、、
537 名前:デフォルトの名無しさん (ワッチョイ 40d9-k96Z) mailto:sage [2016/11/17(木) 14:11:29.10 ID:DsCEIrdz0.net] 「C#プログラム効率的な書き方」でも読めば? この本は嫌というほど詳細にLINQが解説してあるから
538 名前:デフォルトの名無しさん (ワッチョイ 7c7b-8L7G) [2016/11/17(木) 14:40:02.46 ID:B+vLCAoF0.net] >529 そうだね。それ読んでみる。
539 名前:デフォルトの名無しさん (ワッチョイ 7c7b-8L7G) [2016/11/17(木) 14:40:19.41 ID:B+vLCAoF0.net] var dtm = new DateTime(); var user = new MembershipUser("?????", "1", "obj", "3","4", "5", true, true, dtm, dtm, dtm, dtm, dtm); MembershipUserをテストしようとしてるんだが"?????"は何をいれたらいいの? 無効なプロバイダーでエラーになる。
540 名前:デフォルトの名無しさん (ワッチョイ 7c7b-8L7G) [2016/11/17(木) 14:41:28.03 ID:B+vLCAoF0.net] 正確には 追加情報:指定されたメンバーシップ プロバイダー名が無効です。 こんなメッセージ
541 名前:デフォルトの名無しさん (ワッチョイ 774f-oPeX) mailto:sage [2016/11/17(木) 14:41:41.50 ID:sJEahq+u0.net] また川俣本か・・・
542 名前:デフォルトの名無しさん (JP 0H0d-2BAc) mailto:sage [2016/11/17(木) 14:41:59.02 ID:9sPAmX71H.net] 実行順序は直感と違うと思うな 副作用がなければ気にならんけど
543 名前:デフォルトの名無しさん (ワッチョイ 40d9-k96Z) mailto:sage [2016/11/17(木) 14:49:43.65 ID:DsCEIrdz0.net] >>533 まあね この人はちょっとパラノイアじみるほどマニアックなところがあるけど、 全部読破すれば間違いなくLINQ to Objectsの力が付くと思う 「こんな使い方普通しないだろw」みたいなのも書いてある
544 名前:デフォルトの名無しさん (ワッチョイ 9fcf-RAPI) [2016/11/17(木) 15:17:23.72 ID:UCWuOxD40.net] >>522 です 開発環境はvisualstdioです nugetで公開されているneolua moonsharp等のluaの拡張パッケージになにか違いがあるのでしょうか?
545 名前:497 (ワッチョイ 7c03-EDxK) mailto:sage [2016/11/17(木) 17:31:32.94 ID:K3Fbeu8d0.net] >>497 です。 せっかくレスいただいたのですが↓が理解できませんでした。申し訳ありません。 > - TestItem(実験項目)にMeasured(測定値)のリストList<Measured>を持たせて、 > - TestItemのリストList<TestItem>を作る List<double> lsMeasTest = new List<double>(); でListを生成して lsMeasTest.Add(dblData); で測定値を格納していくのはわかります。 実験項目が増えたときにListを生成するのですが List<double> 変数名 = new List<double>(); を必要数分実行する方法がわからないのです。
546 名前:デフォルトの名無しさん (ワッチョイ 9f94-Ctj4) mailto:sage [2016/11/17(木) 17:59:43.84 ID:JueYqnTL0.net] 項目リストとしてList<List<double>>(List<double>を入れるList)を作っておく 測定値を入れたList<double>を作ったら、項目リストにAddしていく ではだめなの
547 名前:デフォルトの名無しさん (ワッチョイ 7c7b-8L7G) [2016/11/17(木) 18:09:46.70 ID:B+vLCAoF0.net] >573 これでどう? var dict = new Dictionary<string, double>(); dict.Add("test1", 32.5); dict.Add("test2", 3002.5); dict.Add("test3", 199932.5);
548 名前:デフォルトの名無しさん (ワッチョイ 7c7b-8L7G) [2016/11/17(木) 18:15:42.30 ID:B+vLCAoF0.net] var dict0 = new Dictionary<string, double>(); dict0.Add("test1", 32.5); dict0.Add("test2", 3002.5); dict0.Add("test3", 199932.5); var dict1 = new Dictionary<string, double>(); dict1.Add("btest1", 32.5); dict1.Add("btest2", 3002.5); dict1.Add("btest3", 199932.5); var Jkken = new Dictionary<string, Dictionary<string,double >>(); Jkken.Add("実験項目1", dict0); Jkken.Add("実験項目2", dict1); こうかな?
549 名前:デフォルトの名無しさん (アウアウオー Sa36-MfQN) mailto:sage [2016/11/17(木) 18:25:00.31 ID:hkg3+6Yaa.net] >>537 大サービスでサンプル書いてみた ideone.com/WjLe3C
550 名前:デフォルトの名無しさん (ワッチョイ 21bd-2Ppy) [2016/11/17(木) 18:51:38.13 ID:mx0eMjxm0.net] public private protected やstatic やプロパティって どうしても必要なの? 実際に不正アクセスが起たりするもんなの? 何のために、何を防御しているのか理解できない。
551 名前:デフォルトの名無しさん (ワッチョイ b179-XpIe) mailto:sage [2016/11/17(木) 18:53:40.36 ID:VcCKxuk30.net] 不正アクセスの為にアクセス制限している訳じゃないし、不正アクセスの防止は出来ない staticは別
552 名前:デフォルトの名無しさん (ワッチョイ 9cba-XpIe) mailto:sage [2016/11/17(木) 19:06:49.94 ID:uPELr+Dd0.net] 遂にGoogleさんも参加するって https://mspoweruser.com/google-joins-net-foundation/
553 名前:デフォルトの名無しさん (JP 0H0d-2BAc) mailto:sage [2016/11/17(木) 19:49:50.72 ID:9sPAmX71H.net] クラウド方面か
554 名前:デフォルトの名無しさん (ワッチョイ b5dc-2XGH) mailto:sage [2016/11/17(木) 20:22:33.07 ID:iGNJFpBr0.net] >>542 余計な情報を外に漏らすと、それを今後もそうだと期待して依存する奴が出てくる で、お前が後で変えたら何で勝手に変えたんやワシのコードが動かへんようになったわシバクぞボケと言われることになる 日常生活でも「言ってしまったから今更変えづらい」ってあるだろ? 確かに約束できること以外には外に余計な情報を漏らさないようにすることで、 中身を弄っても何勝手に変えとんねんと言われない変更に強いプログラ厶になるんだよ
555 名前:デフォルトの名無しさん (オッペケ Sra9-2XGH) mailto:sage [2016/11/17(木) 21:12:47.62 ID:lS45HIXqr.net] >>529 >C#が提供するLINQ to Objectsは、多大な効能と価値を併せ持つ重要な考え方ですが、Cのポインタ同様に抽象的でわかりりにくいものです。 ってその本の解説に書いてるよ やっぱわかりにくいんだね
556 名前:デフォルトの名無しさん (ワッチョイ b5dc-Th+s) mailto:sage [2016/11/17(木) 23:20:42.92 ID:iGNJFpBr0.net] それはSQLを知らないだけかと SQLは伝統的なドカタ道具の中ではズバ抜けてセンスのいい技術だから 食わず嫌いしないで一度ちゃんと学んだ方がいい
557 名前:デフォルトの名無しさん (ワッチョイ 9c42-XpIe) mailto:sage [2016/11/18(金) 00:06:56.41 ID:BJrPV4Dl0.net] なぜLambdaがあるのにLinqなんて異物をぶち込んだのか いまだにわからん 全部Lambdaでいいやん!
558 名前:デフォルトの名無しさん (ワッチョイ b97b-AAsj) [2016/11/18(金) 00:09:34.50 ID:ifsRvlL10.net] int i = 0; int j = 0; System.Console.WriteLine(i++); //0 System.Console.WriteLine(j+1); //1 この2つはなぜ結果が異なってしまうんでしょうか?
559 名前:デフォルトの名無しさん (オッペケ Sra9-2XGH) mailto:sage [2016/11/18(金) 00:16:31.04 ID:0j66y/nmr.net] >>548 SQLはMySQLを5年ほどやっとります
560 名前:デフォルトの名無しさん (ワッチョイ b5dc-Th+s) mailto:sage [2016/11/18(金) 00:30:20.75 ID:gT3Hev+M0.net] >>550 i++はインクリメントする前の値を返すから
561 名前:デフォルトの名無しさん (ワッチョイ 40d9-k96Z) mailto:sage [2016/11/18(金) 00:46:38.58 ID:iR5uoSVg0.net] >>547 最初にCのポインタをやった時を思い出すといい 初めは全然分からなかったろ?でも今は楽に分かるだろ? 要は慣れ
562 名前:デフォルトの名無しさん (ワッチョイ b5dc-Th+s) mailto:sage [2016/11/18(金) 00:55:03.81 ID:gT3Hev+M0.net] >>549 JoinとかGroupByとかSelectManyとかクエリ式無しだともはや暗号だろ
563 名前:デフォルトの名無しさん (ワッチョイ 9fd4-XpIe) mailto:sage [2016/11/18(金) 01:08:31.02 ID:Bd8bsuVC0.net] クエリ式なんか使ったことない
564 名前:デフォルトの名無しさん (ワッチョイ 7c7b-8L7G) [2016/11/18(金) 02:34:45.49 ID:ayjJho0i0.net] >554 それ以外ならラムダ式でできるんか? 例えば? Where、selectを ラムダ式で書いてみて。 ラムダ式の意味がわからんけど、まあ適当に「こんなんか」くらいで使ってる。
565 名前:デフォルトの名無しさん (ワッチョイ 7c7b-8L7G) [2016/11/18(金) 02:47:08.73 ID:ayjJho0i0.net] LINQは便利やけど、OrderByとか気持ち悪くて使う気しないな。 単純にSortするよな。 多用するとパーフォマンスが無茶苦茶落ちると思う。
566 名前:デフォルトの名無しさん (ワッチョイ 7c7b-8L7G) [2016/11/18(金) 02:54:33.31 ID:ayjJho0i0.net] public IEnumerable<string> Records { get { return doc.Element("root").Element("collections").Elements("own").Select(c => c.Descendants("ID").First().Value); } } LINQだめじゃん。 こっちのほうが簡単。 public IEnumerable<string> Records { get { return doc.XPathSelectElements("//root/collections/own/ID"); } } 👀 Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)
567 名前:デフォルトの名無しさん (ワッチョイ 7c7b-8L7G) [2016/11/18(金) 02:57:24.22 ID:ayjJho0i0.net] XpathとLINQを組み合わせてつかえんのか?
568 名前:デフォルトの名無しさん (ワッチョイ 3a13-RUi6) mailto:sage [2016/11/18(金) 03:07:45.45 ID:qODTBmiq0.net] ごちゃごちゃうるせーよ
569 名前:デフォルトの名無しさん (ワッチョイ 7c7b-8L7G) [2016/11/18(金) 03:13:27.93 ID:ayjJho0i0.net] var elem = XElement.Parse(something); var maz = elem.Element("vehicle").Elements("car").Where(c => ((string)c.Attribute("maker")) == "mazda")); LINQはXMLみたいな階層構造を持ってるとダメじゃない? これじゃ最初のItemしかサーチできないよ。
570 名前:デフォルトの名無しさん (ブーイモ MM0d-N7ik) mailto:sage [2016/11/18(金) 08:03:56.85 ID:/xmrja5bM.net] Linqがボトルネックになったことって意外とないよな 大量データってわかってれば最初から速度最適化考えるし CLRはメモリ節約の効果がでかいんだね
571 名前:デフォルトの名無しさん (ワッチョイ b5dc-2XGH) mailto:sage [2016/11/18(金) 08:16:20.86 ID:gT3Hev+M0.net] それはLINQ使おうとする奴はだいたい一定のスキルがあるから無茶しないだけ LINQを使おうと思えば使えるシーンで大量データに対して O(N^2)とかの馬鹿みたいなループをやらかす奴はやっぱりいるわけだけど、 そういう奴は当然LINQなんか使わない(使えない)
572 名前:デフォルトの名無しさん (ワッチョイ ad5b-N7ik) mailto:sage [2016/11/18(金) 08:21:39.98 ID:O/884XX90.net] トグルスイッチのようなインターフェースってWindowsformのコントロールにあるっけ? ない場合どうやって作れる?
573 名前:デフォルトの名無しさん (ドコグロ MMff-RUi6) mailto:sage [2016/11/18(金) 08:26:54.53 ID:MmcaWbSXM.net] >>564 チェックボックスかラジオボタンで代用
574 名前:デフォルトの名無しさん (ワッチョイ 7c03-EDxK) mailto:sage [2016/11/18(金) 08:35:21.61 ID:nNUszv7+0.net] >>538-541 ありがとうございます!! B+vLCAoF0さんのDictionaryを使う方法、 サンプルコードを準備していただいたhkg3+6Yaaさんの方法 どちらも勉強させていただきます。 本当に感謝です、ありがとうございました!
575 名前:デフォルトの名無しさん (オッペケ Sra9-hkLf) mailto:sage [2016/11/18(金) 09:35:07.23 ID:+KSaSaaRr.net] LINQ-To-XMLの立場は。
576 名前:デフォルトの名無しさん (ワッチョイ b974-qiik) mailto:sage [2016/11/18(金) 09:39:13.30 ID:MjC3oXMe0.net] 知らない子ですねえ
577 名前:デフォルトの名無しさん (ワッチョイ 1519-/ySS) mailto:sage [2016/11/18(金) 10:51:06.70 ID:AfWqy2AK0.net] >>564 2値のTrackBarとか
578 名前:デフォルトの名無しさん (ワッチョイ 88d4-XpIe) mailto:sage [2016/11/18(金) 12:42:20.87 ID:qAuADTbv0.net] C++弄っていた人から見たら、C#もVBも大差ないよなぁ ちょっと方言が違うだけ、みたいな 値渡しなのか参照渡しなのか、パッと見で分からないし 使った変数の後始末はFramework任せとか
579 名前:デフォルトの名無しさん (ワッチョイ 1519-/ySS) mailto:sage [2016/11/18(金) 14:11:40.18 ID:AfWqy2AK0.net] 値渡しなのか参照渡しなのか分からないのはむしろC++とVBだと思うのだけど 呼び出される側だけ特別な記述&/ByRefして呼び出す側は変わらないって言う C#は両者共に特別な記述ref/outが必要で
580 名前:デフォルトの名無しさん (ワッチョイ 7c7b-8L7G) [2016/11/18(金) 14:27:23.42 ID:ayjJho0i0.net] C++とか触る気しないな。いらんことを書く量が多すぎて気が狂いそう。 その点F#をすこし触ってみたが、これは楽だな。C#からすると違和感があるが型推論が しっかりしているので慣れると楽だと思う。 そもそもループを書くためのforとかがない。もしLINQを知らなかったら、ループなしで どうやってプログラムを書くのか理解に苦しんだと思う。
581 名前:537 (ワッチョイ 7c03-EDxK) mailto:sage [2016/11/18(金) 15:03:02.85 ID:nNUszv7+0.net] >>537 です。 >>541 でサービスしていただきましたが現状とても難しいです。 =>ってなんでしょうか。ビルドできないです。。。 でも、もう少しがんばります。
582 名前:デフォルトの名無しさん (アウアウオー Sa36-MfQN) mailto:sage [2016/11/18(金) 18:15:45.39 ID:fuS99ZTSa.net] >>573 使ってるC#のバージョンは? それはC#6で導入された読み出し専用プロパティの省略記法 public List<Measured> MeasuredList => _MeasuredList; は public List<Measured> MeasuredList { get {return _MeasuredList;} } と同じ。 www.atmarkit.co.jp/ait/articles/1606/01/news051.html
583 名前:デフォルトの名無しさん (ワッチョイ ad5b-N7ik) mailto:sage [2016/11/18(金) 20:21:01.12 ID:O/884XX90.net] >>565 そっかー残念 ありがとう
584 名前:デフォルトの名無しさん (ワッチョイ 9fd4-XpIe) mailto:sage [2016/11/18(金) 20:30:49.38 ID:P4KNWvky0.net] カスタムコントロールで適当なコントロールから継承して作ればいいだけ 簡単に作れるよ
585 名前:デフォルトの名無しさん (ワッチョイ 7c7b-8L7G) [2016/11/18(金) 20:45:44.35 ID:ayjJho0i0.net] 適当では作れんだろ。w どのコントロールを継承してどのように作るのか。
586 名前:デフォルトの名無しさん (ワッチョイ 9fcf-RAPI) [2016/11/18(金) 20:53:06.96 ID:cT5mFVkF0.net] keydownイベントをプログラムから発生させる方法はありますか?
587 名前:デフォルトの名無しさん (アウアウオー Sa36-MfQN) mailto:sage [2016/11/18(金) 20:54:03.59 ID:fuS99ZTSa.net] まあ、Checkboxを継承するのが普通だろうねえ。 トグルスイッチっていうのはビジュアルをAndroidのUIにあるような奴にしたいってことかな。 ボタンの凹凸を切り替えるのでよければ何もしなくても標準でできるけど
588 名前:デフォルトの名無しさん (ワッチョイ 3f49-YqEk) mailto:sage [2016/11/18(金) 21:37:55.69 ID:8JkTMqoR0.net] 見た目を重視しないなら、ユーザーコントロールでトグルボタン2個乗っけるのが手っ取り早い。
589 名前:デフォルトの名無しさん (ワッチョイ 9fd4-XpIe) mailto:sage [2016/11/18(金) 21:51:48.89 ID:P4KNWvky0.net] Checkbox継承してOnPaintで描けばいいだけだから、やってみるば簡単 Checkedで描画する画像切替えるとかで簡単に実現できる サイズは画像のサイズに合わせてMaximumSizeとMinimumSizeを固定しちゃうとかかな
590 名前:デフォルトの名無しさん (ワッチョイ 9fcf-RAPI) [2016/11/18(金) 22:02:56.90 ID:cT5mFVkF0.net] >>578 です 実装できました
591 名前:デフォルトの名無しさん (ワッチョイ 3f49-+6wY) [2016/11/18(金) 22:24:07.69 ID:8JkTMqoR0.net] 画像貼り付けて作ると高DPI対応は出来なくなるな
592 名前:デフォルトの名無しさん (ワッチョイ 34ce-ke/V) mailto:sage [2016/11/18(金) 22:47:36.55 ID:YsofO7c60.net] 画像を高画質で持っておいて伸縮サセルノデス
593 名前:デフォルトの名無しさん (アウアウオー Sa36-MfQN) mailto:sage [2016/11/18(金) 22:49:04.17 ID:fuS99ZTSa.net] EMFを使えば出来るんじゃない? 十分でかいビットマップを使ってもいいと思うけど
594 名前:デフォルトの名無しさん (ワッチョイ 34ce-ke/V) mailto:sage [2016/11/18(金) 22:51:45.64 ID:YsofO7c60.net] ところでWindows10によくある横にスライドするスイッチ(● )←みたいなやつ あれの状態をプログラムから参照したいのですが、 ウィンドウハンドル的なものは取れますか?
595 名前:デフォルトの名無しさん (ワッチョイ 5e23-tQqt) mailto:sage [2016/11/18(金) 23:09:11.73 ID:RGR0MUcx0.net] >>585 つか、単純な図形だからGDI+で書いたほうが早いし、アニメーションさせたくなったら 画像はお払い箱です
596 名前:デフォルトの名無しさん (ワッチョイ 3f49-YqEk) mailto:sage [2016/11/18(金) 23:12:28.84 ID:8JkTMqoR0.net] EMFは存在をすっかり忘れていたな C#でも扱えるんだね デカいビットマップの縮小は、小さいパーツだとあまり綺麗に表示されないよ マルチアイコンみたいに複数の解像度の画像を用意すればましだけど
597 名前:デフォルトの名無しさん (ワッチョイ 3a13-8L7G) [2016/11/18(金) 23:29:21.49 ID:+XmNVsSt0.net] 自作のフォームアプリケーションを起動させて引数も渡したいのですがどうすればいいですか?
598 名前:デフォルトの名無しさん (ワッチョイ 3a13-8L7G) [2016/11/18(金) 23:40:26.29 ID:+XmNVsSt0.net] できました
599 名前:デフォルトの名無しさん (ワッチョイ 5e7d-XpIe) mailto:sage [2016/11/18(金) 23:55:36.52 ID:X3QgbGYl0.net] 画像の拡大縮小はモード選べるよ。十分綺麗にできるでしょ
600 名前:デフォルトの名無しさん (ワッチョイ 56e1-RUi6) mailto:sage [2016/11/19(土) 00:45:16.52 ID:1yryIr4y0.net] >>559 普通に出来るだろ
601 名前:デフォルトの名無しさん (ワッチョイ 7c7b-8L7G) [2016/11/19(土) 02:06:11.41 ID:E+HZm7+A0.net] >Checkbox継承してOnPaintで描けばいいだけだから、やってみるば簡単 >Checkedで描画する画像切替えるとかで簡単に実現できる >サイズは画像のサイズに合わせてMaximumSizeとMinimumSizeを固定しちゃうとかかな こんなことやったことないわ。どういう意味だ? なんでChecboxを継承する必要があるんだ? つかトグルSWだよな。 ちょっとやってみるんで指導よろしく。 OnPaintで描くってどういう意味だ? 情報が欠落しすぎ。 まずプロジェクトに追加するのは何? ユーザーコントロール? クラス? コンポーネント? どれだ?
602 名前:デフォルトの名無しさん (ワッチョイ 7c7b-8L7G) [2016/11/19(土) 02:08:07.35 ID:E+HZm7+A0.net] checkboxを継承するってのだから、どう考えてもクラスだよな。じゃあまあ 追加クラス。
603 名前:デフォルトの名無しさん (ワッチョイ 7c7b-8L7G) [2016/11/19(土) 02:31:43.92 ID:E+HZm7+A0.net] public class clsToggleButton : CheckBox { Form _pform; public clsToggleButton(Form frm) { _pform = frm; } public void OnPaint (PaintEventArgs pevent) { //ここにトグルボタンを描く if( this.Checked == false ){ //どこに描くんだろ? }else{ } } }
604 名前:デフォルトの名無しさん (ワッチョイ 5e7d-XpIe) mailto:sage [2016/11/19(土) 02:41:43.15 ID:wlTmYqF50.net] 追加→新しい項目→カスタムコントロール で、追加されたコードのControlの部分をCheckBoxに。 OnPaintの所は、例えば↓みたいすれば、クリックするたびに赤と青が入れ替わる protected override void OnPaint(PaintEventArgs pe) { using (var brush = new SolidBrush(Checked? Color.Red : Color.Blue)) { pe.Graphics.FillRectangle(brush, ClientRectangle); } } 一度ビルドすると、ツールボックスに載るのでドラッグ&ドロップでフォームに配置できる
605 名前:デフォルトの名無しさん (スププ Sdb8-RUi6) mailto:sage [2016/11/19(土) 02:54:11.98 ID:aIswJeomd.net] >>593 一切欠落してなくない? Checkboxを継承したコントロールだから、クラスで、コンポーネントで、ユーザコントロールだけど、そんな瑣末な話は置いといて、 とりあえず、OnPaintをオーバーライドして、graphicsにthis.checked描画してみたら?
606 名前:デフォルトの名無しさん (ワッチョイ 5e41-mj3c) [2016/11/19(土) 04:05:39.65 ID:N2eyluxh0.net] どうしてもタメになる書籍はC++をサンプルに使われてることが 多いから調べてはいるけど C#に慣れちゃってるとまーキモチワルい 確かにこれが出来ればほとんど何でも出来るんだろうけど・・・ とりあえずC++最高ということで
607 名前:デフォルトの名無しさん (ワッチョイ 5e41-mj3c) [2016/11/19(土) 04:38:58.99 ID:N2eyluxh0.net] ちげぇ! C#最高!です なんとか基本的なことは出来るようになった希ガス 疲れたよ、もう
608 名前:デフォルトの名無しさん (ワッチョイ 9fcf-RAPI) [2016/11/19(土) 06:23:34.01 ID:S6bRHJ270.net] 600げと
609 名前:デフォルトの名無しさん (ワッチョイ 7c7b-8L7G) [2016/11/19(土) 06:31:51.33 ID:E+HZm7+A0.net] >Checkboxを継承したコントロールだから、クラスで、コンポーネントで、ユーザ >コントロールだけど、そんな瑣末な話は置いといて、 うろ覚えの初心者には全然些末じゃないy。 無茶苦茶大事!!! 「Checkboxを継承したコントロール」ここにたどり着くのに一晩かかる。 ユーザコントロール is a コンポーネント コンポーネント is a クラス こういう関係なの? おお、初めて知った。 トグルボタン は ユーザーコントロールとして作るってことだね。納得。 でも空クラスを配置してCheckboxを継承してもおんなじことだよね。 何が違うの?
610 名前:デフォルトの名無しさん (ワッチョイ 7c7b-8L7G) [2016/11/19(土) 06:56:43.78 ID:E+HZm7+A0.net] >596 この説明は完璧って感じがする。 これからでかけるのでチェックできない残念。
611 名前:デフォルトの名無しさん (ワッチョイ 9c7b-wMId) mailto:sage [2016/11/19(土) 08:53:15.23 ID:gGKRRZRa0.net] >>601 各種コントロールの説明や、継承チェーンを見れば? 自分が作りたいコントロールに近いものを探して使うか、 そこから継承して派生したコントロールを作ればいい クラスを使う時は、継承チェーンをさかのぼりながら、 ベースクラスにどういう機能があるか調べる なぜなら派生クラスは、ベースクラスのすべての機能を持っているから
612 名前:デフォルトの名無しさん (ワッチョイ 3f49-YqEk) mailto:sage [2016/11/19(土) 12:30:26.20 ID:xW+PNGAl0.net] >>598 STLなんかは後付けで今風な機能を実装しようとしてて、無理やり感が半端ない。
613 名前:デフォルトの名無しさん (スププ Sdb8-RUi6) mailto:sage [2016/11/19(土) 13:12:50.96 ID:aIswJeomd.net] >>601 同じ事だよ。 ユーザコントロール一度画面から選ぶと、似たようなコード出て来るから、 そいつの継承元見てみ。 >>596 は親切だな。
614 名前:デフォルトの名無しさん (ワッチョイ 9c7b-wMId) mailto:sage [2016/11/19(土) 18:51:47.20 ID:gGKRRZRa0.net] よく知らんけど普通、IDEにはクラスウィザードが付いている 新しいクラスを作るときは、クラスウィザードの画面で作れば、自動的にクラスが作られる
615 名前:デフォルトの名無しさん (アウアウオー Sa36-MfQN) mailto:sage [2016/11/19(土) 19:01:01.87 ID:VKIYWaqIa.net] そんな使ってる人ほとんどいないと思うよw ところで前から思うんだけどウィザードってのはポリコレ的にどうなのかね
616 名前:デフォルトの名無しさん (ワッチョイ 3a20-XpIe) [2016/11/20(日) 19:20:37.60 ID:DP6jtmXB0.net] ハードディスクのベンチマークを測る 簡易ツールを作りたくて ランダムリード・ライトのサンプルを見つけたのですが これでハードディスクへのランダムリード・ライトになるでしょうか? //ランダム書き込み using (System.IO.BinaryWriter rw = new System.IO.BinaryWriter( File.OpenWrite(@"C:\temp\test.txt"), System.Text.Encoding.UTF8)) rw.Write("0"); //ランダム読み込み using (System.IO.FileStream file = new FileStream(@"C:\temp\test.txt", System.IO.FileMode.Open, System.IO.FileAccess.Read)) { byte[] bs = new byte[file.Length]; file.Read(bs, 0, bs.Length); }
617 名前:デフォルトの名無しさん (ブーイモ MMb8-RUi6) mailto:sage [2016/11/20(日) 19:28:04.56 ID:aSeFXcOvM.net] ファイル名が違うな ¥¥.¥PhysicalDriveN だよ
618 名前:デフォルトの名無しさん (ワッチョイ 777b-w7k2) mailto:sage [2016/11/20(日) 20:25:05.70 ID:JNgwCyth0.net] ディスク書き込みは複数層でバッファリングがあるから .NETのライブラリだけじゃ割と無理じゃないかな
619 名前:デフォルトの名無しさん (ワッチョイ 3a20-XpIe) [2016/11/20(日) 20:32:04.76 ID:DP6jtmXB0.net] \\.\PhysicalDriveN なんてドライブの指定方法があるのですね ただ、MBRを迂闊に書き換えると クラッシュするとか 単純な読み書きは危険なようで だから、公開されてるベンチツールには シーケンシャルの読み書きしかないのかと思いました 情報ありがとうございます
620 名前:デフォルトの名無しさん (ワッチョイ fa73-XpIe) mailto:sage [2016/11/20(日) 22:44:41.11 ID:ujJmR5b00.net] BindingSource のデータをLINQで扱いたいのですが ↓コードのbs に登録されているデータをLINQを使って ID=100とID=200 のKamokuの平均値をだしたいのですがどんな風にやればいいでしょうか? private List<Employee> emplist; BindingSource bs = new BindingSource(emplist, string.Empty); dataGridView1.DataSource = bs;
621 名前:デフォルトの名無しさん (ワッチョイ 777b-w7k2) mailto:sage [2016/11/20(日) 23:11:49.40 ID:JNgwCyth0.net] DataSourceがList<T>ならBindingSourceでフィルタできるわけでも無し emplistにWhereとAverageするだけじゃね Whereで要素数0になる可能性があるとちょっと面倒だけど
622 名前:デフォルトの名無しさん (ワッチョイ fa73-XpIe) mailto:sage [2016/11/20(日) 23:36:14.07 ID:ujJmR5b00.net] >>613 DataTable でLINQ使うときは、↓のように var items = dt.AsEnumerable() でやれるのですが >>612 のようにやるときは、bs.AsEnumerable() みたいにはできないのですか? DataTable dt; var items = dt.AsEnumerable() .Where(x => x["id"] == "100") .Select(x => x["Koumoku"].ToString());
623 名前:デフォルトの名無しさん (ワッチョイ b5dc-Th+s) mailto:sage [2016/11/20(日) 23:45:11.80 ID:mNZMIvsS0.net] BindingSourceは一応IEnumerableを実装してるから bs.Cast<Employee>().Where(…とできるんじゃないの 試したことないしそんなことしようとも思わないけど
624 名前:デフォルトの名無しさん (ワッチョイ fa73-XpIe) mailto:sage [2016/11/20(日) 23:51:53.85 ID:ujJmR5b00.net] >>615 ありがとう試してみます。
625 名前:デフォルトの名無しさん (ワッチョイ 3f49-YqEk) mailto:sage [2016/11/21(月) 02:19:09.69 ID:iKiRpZRf0.net] >>611 >>610 の言う通り、c#のStreamキャッシュとOSのファイルキャッシュがあるから、C#標準のライブラリだけじゃ実現できないよ。 P/InvokeでCreateFile()やWriteFile()/ReadFile()等のWIN32APIを呼び出す必要がある。 OSのファイルキャッシュは、CreateFile()でオープンする時にFILE_FLAG_NO_BUFFERINGを指定すれば無効にできる。 HDDに直接書き込みたいなら、ロックとアンマウントも必要になるんじゃないかな。 (DeviceIoControl()でFSCTL_LOCK_VOLUMEとFSCTL_DISMOUNT_VOLUME)
626 名前:デフォルトの名無しさん (ワッチョイ 159a-2Ppy) [2016/11/21(月) 05:14:56.16 ID:6eO9t+4E0.net] >>490-491 C#側でデリゲート型を定義して、起動時にコールバック関数のデリゲートをDLLに渡し、 DLL側では関数ポインタとして受け取ることで、C#側の関数をC側から適宜呼び出すことが できました。C#側はunsafeを使ってないマネージコードなのに、Cから関数ポインタの形で 呼び出すことができるんですね、ちょっと驚きました。有り難うございました。 そこでもう一つ疑問が出てきたんですが、DllImportしたDLLがprintfした内容(標準出力)を、 WPFアプリやFormアプリで受け取って特定のコントロールに出力したり、GUIとは別に コンソールウィンドウを出してそちらに表示するようなことはできるんでしょうか。
627 名前:デフォルトの名無しさん (ワッチョイ b5dc-Th+s) mailto:sage [2016/11/21(月) 07:15:54.06 ID:EumYM2T30.net] SetStdHandleとかでできるんじゃないの 素直に子プロセス作ってリダイレクトした方が簡単確実だけど
628 名前:デフォルトの名無しさん (ワッチョイ fa23-tQqt) mailto:sage [2016/11/21(月) 08:51:20.53 ID:hLpmxTjl0.net] int25とかint26思い出したわ
629 名前:デフォルトの名無しさん (ワッチョイ fa73-XpIe) mailto:sage [2016/11/21(月) 20:26:47.04 ID:7M/YTSBB0.net] LINQで質問ですが class Person { public string id { get; set; } public DateTime Dateday{ get; set; } public int kamoku { get; set; } } var items = (from tesA in bs.Cast<Person>() where tesA.id == 100 select tesA.kamoku).avrage; ↑でID = 100 のkamoku の平均を求めていますが、 Datedayの最新10件で平均を求めるのはどんな書き方があるでしょうか? 後、IDの割合を求めるときに↑のwhere tesA.id == 100 を外したのをもう一回やって割り算しているのですが一括で書くときはどうすればいいでしょうか?
630 名前:デフォルトの名無しさん (ワッチョイ b5dc-Th+s) mailto:sage [2016/11/21(月) 22:40:08.70 ID:EumYM2T30.net] >>621 var av = ( from tesA in bs.Cast<Person>() where tesA.id == 100 order by tesA.Dateday descending select tesA.kamoku ).Take(10).Average(); IDの割合の方は質問の意味が分からない
631 名前:デフォルトの名無しさん (ワッチョイ fa73-XpIe) mailto:sage [2016/11/21(月) 23:04:49.74 ID:7M/YTSBB0.net] >>622 ありがとうございます。参考になります。 IDの割合はAverageでなくてcountにしたほうがよかった。すみません 今は↓の結果 items100 / itemsALLで割合をだしています。これを1回で書きたいです。 var items100 = (from tesA in bs.Cast<Person>() where tesA.id == 100 select tesA.kamoku).count; var itemsALL = (from tesA in bs.Cast<Person>() select tesA.kamoku).count;
632 名前:デフォルトの名無しさん (ワッチョイ b5dc-Th+s) mailto:sage [2016/11/21(月) 23:08:48.37 ID:EumYM2T30.net] items100 / bs.Count でいいだろそれ
633 名前:デフォルトの名無しさん (ワッチョイ 5e41-mj3c) [2016/11/21(月) 23:14:12.37 ID:lc1W0DQ40.net] 一連のスイッチのオンオフを配列にいれて シーケンスな処理を
634 名前:するんですが そのままだと当然boolの配列です。 この場合、配列にする際にConvert.ToInt32を使い 0,1の配列にした方が処理速度が速くなる ということはあるでしょうか? 配列数は多くても64個です。 自分で確認はまだしてないですが 知見多き方お願いします。 [] [ここ壊れてます]
635 名前:デフォルトの名無しさん (ワッチョイ fa73-XpIe) mailto:sage [2016/11/21(月) 23:22:00.28 ID:7M/YTSBB0.net] >>624 >>623 すみません items100 / bs.Count だと実際にやりたいので使えないので ↓ので items100 / itemsALL で書くときはどうしたらいいでしょうか? var items100 = (from tesA in bs.Cast<Person>() where tesA.id == 100 select tesA.kamoku).count; var itemsALL = (from tesA in bs.Cast<Person>() where tesA.id > 100 select tesA.kamoku).count;
636 名前:デフォルトの名無しさん (ワッチョイ 0448-dXbs) mailto:sage [2016/11/21(月) 23:30:37.04 ID:cS6E2DFI0.net] >>625 BitArrayを調べてみたらいい、非ジェネリックでは唯一つかえる存在かもな
637 名前:デフォルトの名無しさん (アウアウオー Sa36-MfQN) mailto:sage [2016/11/21(月) 23:34:45.98 ID:4A1pLeCTa.net] >>625 bool使って遅くなる理由があると思えんなあw どっちにしろ要素数64じゃ差はでないでしょ。 「シーケンシャルな処理」とやらが単純な論理演算ならboolやboolの代用にintを使った配列ではなく、 intをビットワイズで使えば圧倒的に高速になるとは思う
638 名前:デフォルトの名無しさん (ワッチョイ b5dc-Th+s) mailto:sage [2016/11/21(月) 23:55:19.26 ID:EumYM2T30.net] >>626 短くしたいだけならこれでいいだろ var persons = bs.Cast<Person>(); var items100 = persons.Where(p => p.id == 100).Count(); var itemsALL = persons.Where(p => p.id > 100).Count(); 全件スキャンが2度走るのが気持ち悪いということなら、素直にループにするか、 もしくはこんなやり方もできないこともない var items = bs.Cast<Person>().ToLookup(p => p.CompareTo(100)); return items[0].Count() / items[1].Count();
639 名前:デフォルトの名無しさん (ワッチョイ fa73-XpIe) mailto:sage [2016/11/22(火) 00:12:53.34 ID:FPsVs5Xk0.net] >>629 最後のがまだよくわからないけど調べてみます。 ありがとうございました。
640 名前:デフォルトの名無しさん (ワッチョイ 7d7b-XpIe) mailto:sage [2016/11/22(火) 00:22:30.53 ID:a+0IO69G0.net] >>630 もしかしてArrayListつかってる?List使った方がいいよ bs = new List<Person>(); ・ ・ float result = (float) bs.Count(x => x.id == 100) / bs.Count(x => x.id > 100);
641 名前:デフォルトの名無しさん (ワッチョイ b5dc-Th+s) mailto:sage [2016/11/22(火) 07:30:50.02 ID:agBMDwRZ0.net] 関係ないけどfloatは誤差が簡単に表面化するから 初心者スレ的には「最終出力以外には使うな」でいいと思う
642 名前:デフォルトの名無しさん (ドコグロ MM74-EDxK) mailto:sage [2016/11/22(火) 09:09:41.67 ID:iOkC5GDaM.net] >>574 遅くなりすみません。 教えていただいたコードでうまくいきました。 ありがとうございました。 使っているのはVisual C# 2013です。
643 名前:デフォルトの名無しさん (ワッチョイ 40d9-k96Z) mailto:sage [2016/11/22(火) 13:19:07.30 ID:xeeHVDvp0.net] VS2013のC#って>>574 の書き方は出来なかったはずだが
644 名前:デフォルトの名無しさん (ワッチョイ 5e41-mj3c) [2016/11/22(火) 20:13:44.80 ID:ZJs8cfZ60.net] >>627 >>628 ありがとうございます!! そうですよね、このくらいの要素数なら どっちにしろ誤差レベルとは思いましたが かなり有益な情報得られたんでよかったです 調べてみます!
645 名前:デフォルトの名無しさん (ワッチョイ 800d-ke/V) [2016/11/22(火) 21:09:02.72 ID:0tp2RUgI0.net] MVVMで、AのViewにあるボタンを押したらBのViewにBindingされているViewModelの値を変更するにはどうすればいいですか?
646 名前:デフォルトの名無しさん (オッペケ Sra9-hkLf) mailto:sage [2016/11/22(火) 21:23:07.00 ID:vhsrXRxUr.net] >>636 AとBにモデルとして関連があるなら、それ同士で連係。 画面としてのみの関連なら、ViewModel同士で連係。
647 名前:デフォルトの名無しさん (ワッチョイ 800d-ke/V) [2016/11/22(火) 21:39:14.03 ID:0tp2RUgI0.net] >>637 返信ありがとうございます ViewModel同士の連係の方ですが、具体的にどのようにすればいいでしょうか? 例えばBのViewModelにあるIsEnabledというメンバー変数の値がある場合、StaticにしてAのViewModelでBのViewModelのインスタンスを作るのでしょうか?
648 名前:デフォルトの名無しさん (ワッチョイ b5dc-Th+s) mailto:sage [2016/11/22(火) 21:48:58.09 ID:agBMDwRZ0.net] >>638 AがBのインスタンスを作るんならStaticにする必要は全く無いだろ しかし、そもそもVMを設ける目的は単体テストであるということを考えると、 VMが別のVMに明示的に依存するのは好ましくない 理想を言えば、AからBを直接newしたりBのメンバに直接アクセスするのではなく、 インターフェース (例えばIB) を定義してAからはIBを通してアクセスすることにして AにBのインスタンスを外から渡してやるのがいい インスタンスを渡すのはViewでやるかDIコンテナ使う
649 名前:デフォルトの名無しさん (ワッチョイ 800d-ke/V) [2016/11/22(火) 21:58:02.53 ID:0tp2RUgI0.net] >>639 ご教授ありがとうございます! ただ、 >インターフェース (例えばIB) を定義してAからはIBを通してアクセスすることにして >AにBのインスタンスを外から渡してやるのがいい この部分がわからないので、コードで実例を教えてください
650 名前:デフォルトの名無しさん (ワッチョイ b5dc-Th+s) mailto:sage [2016/11/22(火) 22:11:27.86 ID:agBMDwRZ0.net] >>640 こんな感じ interface IEnableable { public bool IsEnabled { get; set; } } class AView { private AViewModel vm; public AView() { this.vm = new AViewModel(BViewModelのインスタンスを取得()); } } class AViewModel { private IEnableable b; public AViewModel(IEnableable b) { this.b = b; } void 連携する() { this.b.IsEnabled = true; } } class BViewModel : IEnableable { public bool IsEnabled { get { 略 } set { 略 } } } BViewModelのインスタンスを取得() のところはnew BViewModel()でもいいしシングルトンでも何でもいい MVVMでは依存関係はなるべくViewに押し付けるのが基本
651 名前:デフォルトの名無しさん (ワッチョイ 800d-ke/V) [2016/11/22(火) 22:21:59.10 ID:0tp2RUgI0.net] >>641 なるほど、このようにやるんですね Viewに押し付けるというのも勉強になりました 本当にありがとうございます!
652 名前:デフォルトの名無しさん (ワッチョイ 9cba-XpIe) mailto:sage [2016/11/22(火) 22:34:41.26 ID:BBlq8Dj70.net] アプリケーションの設定を保持するクラスを作ってこれをシリアライズできるようにしたのですが、 このシリアライズしたものをapp.configに含むことはできるでしょうか? ファイル名や場所をコードで指定するのが嫌だなぁという程度の理由ですが。
653 名前:デフォルトの名無しさん (ワッチョイ b5dc-Th+s) mailto:sage [2016/11/22(火) 22:42:45.68 ID:agBMDwRZ0.net] >>643 System.Configuration.ConfigurationSection でも普通にSettings使った方が簡単だと思うけど
654 名前:デフォルトの名無しさん (ワッチョイ 9cba-XpIe) mailto:sage [2016/11/22(火) 23:20:36.22 ID:BBlq8Dj70.net] そうですか、無いですか。ありがとうございました。
655 名前:デフォルトの名無しさん (ワッチョイ a030-qiik) mailto:sage [2016/11/23(水) 01:45:13.48 ID:MGsJz9yg0.net] 噛み合ってなさが絶妙
656 名前:573 (ドコグロ MM87-f5kA) mailto:sage [2016/11/24(木) 09:42:16.88 ID:EZR6VYZqM.net] >>573 です。 if(1 == args.Count()){ var t1 = new TestItem("デバイス1"); } if (2 == args.Count()){ t1.AddMeasured(new Measured("電圧", "V", 1)); t1.AddMeasured(new Measured("電流", "mA", 100)); testItems.Add(t1); } 上記のようにすると下IF文内のt1が”現在のコンテキスト内に存在しません”となってしまします。 IF分の条件式は例ですがt1の生成と値の格納が同条件でない場合は どのように処置するべきでしょうか。 やりたいことはテキストファイルから各語を読み出して格納して数値演算(平均値、最大、最小、標準偏差)したいのです。 テキストに格納してある情報は次の順になります。 ”項目名1” ”項目名1の測定値1” ”項目名2” ”項目名2の測定値1” ・・・ ”項目名10” ”項目名10の測定値1” ”項目名1” ”項目名1の測定値2” ・・・ 1回目の”項目名n”を取得したときに配列(List)を生成し その後は”項目名n”により選択した生成済みの配列に”測定値n”を格納したいです。 本業はHWよりのためC#基礎がわかって無く申し訳ありません。 でも何とかできることは自分で処理したいと思っています。 よろしくお願いします。
657 名前:デフォルトの名無しさん (ワッチョイ ab3a-/sNf) mailto:sage [2016/11/24(木) 10:18:45.81 ID:+mUg/yMV0.net] >>647 if文の外で変数定義する。 『スコープ』の概念を学ぶべし。 今のレベルの基本が分かってない内はvar使わない方が良いかも。 varは便利だし正しく使えば特に害のない機能だけど、意味が分からないうちはやめとこう。
658 名前:デフォルトの名無しさん (ドコグロ MM27-f5kA) mailto:sage [2016/11/24(木) 11:09:09.16 ID:IyDqbIdrM.net] >>648 ありがとうございます! チャレンジしてみます。
659 名前:デフォルトの名無しさん (ワッチョイ a77b-rApL) [2016/11/24(木) 12:28:53.06 ID:P/Ibr7r50.net] varは積極的に使うべきだよ。
660 名前:デフォルトの名無しさん (ワッチョイ c748-AQyI) mailto:sage [2016/11/24(木) 14:01:47.31 ID:4ySrR9x20.net] >>647 標準偏差は自前で計算してもいいけどMath.NET Numericsというのが既にある(nugetで入れる) ideone.com/kv7bLQ こういうのってRの方が手っ取り早い気がする CSVの読み込みからグラフ描画まで揃ってるしな
661 名前:デフォルトの名無しさん (ワッチョイ 5b3c-/sNf) mailto:sage [2016/11/24(木) 14:14:09.14 ID:G2Ig6Dqz0.net] >>648 var関係ないやろ
662 名前:648 (ブーイモ MMc7-/sNf) mailto:sage [2016/11/24(木) 15:37:41.35 ID:cupH4QVAM.net] >>650 それは同意する。積極的に使うべき。 ただ、スコープの理解がまだの方には少し毒と思っただけ。 >>649 異論も多いようなので、varに関しては先ほどの発言を気にせず自由にやって下さいな。頑張って!
663 名前:デフォルトの名無しさん (JP 0Hdf-sTmH) mailto:sage [2016/11/24(木) 17:51:15.84 ID:2Y5JG7GhH.net] 質問します。 ファイルの存在を確認する方法についての質問です。 if (System.IO.File.Exists(@"C:\tmp\sample.txt")) { MessageBox.Show("ファイルは存在します"); } else { MessageBox.Show("ファイルは存在しません"); } 上記例の場合、 「tempフォルダ内のsample.txtというファイル」 の存在を確認するようになっていますが、 同時に異なる2つのフォルダ内の2種類のファイルの存在を 確認するにはどうすればいいのでしょうか? C:\tmp1\sample1.txt C:\tmp2\sample2.txt が同時に(又は片方だけ)存在する場合の処理を行いたいと思っています。 File.Exists((@"C:\tmp1\sample1.txt")&&(@"C:\tmp2\sample2.txt")) みたいな書き方はできないんでしょうか? やってみたらNGになったんで質問した次第です。 よろしくお願いします。
664 名前:デフォルトの名無しさん (ワッチョイ c748-AQyI) mailto:sage [2016/11/24(木) 18:09:09.66 ID:4ySrR9x20.net] この場合は if (File.Exists(@"C:\tmp\sample.txt") && File.Exists(@"C:\tmp\sample2.txt")) {} if (File.Exists(@"C:\tmp\sample.txt") || File.Exists(@"C:\tmp\sample2.txt")) {} という風にFile.Existsが2回必要なわけだろ 可変で1個かもしれないし2個以上かもしれないというときは string[] list = { @"C:\tmp\sample.txt", @"C:\tmp\sample2.txt", }; に対してLINQが使える if (list.All(x => File.Exists(x))) {} if (list.Any(x => File.Exists(x))) {}
665 名前:デフォルトの名無しさん (スッップ Sdaf-/sNf) mailto:sage [2016/11/24(木) 18:11:35.21 ID:HdRBGkCMd.net] >>654 Exists(..)を&&で繋げば良いよ。
666 名前:デフォルトの名無しさん (ワッチョイ abdc-MM3T) mailto:sage [2016/11/25(金) 07:04:44.10 ID:9jtEtGtN0.net] >>655 その場合、 list.All(File.Exists) list.Any(File.Exists) の方がスマート
667 名前:デフォルトの名無しさん (JP 0Hdf-sTmH) mailto:sage [2016/11/25(金) 09:44:10.37 ID:55zEIhIxH.net] 654です。 ありがとうございました。 なるほど、パス名を&&でつなげてもだめですね。 File.Exists(・・・)&&File Exists(・・・)を にしなきゃダメですね。 やってみたらうまくいきました。 LINQはあまりわかってないんですが、 やっぱり使えれればかなりコードを書くのが楽になるんでしょうか? 時間ができればやってみてもいいかなぁと思っていますが・・・
668 名前:573 (ドコグロ MMcf-f5kA) mailto:sage [2016/11/25(金) 10:18:27.69 ID:cWogpahDM.net] >>651 >>653 レスありがとうございます。 勉強になります。 徐々に方向性が見えて来たような気がしています。 ありがとうございます。
669 名前:デフォルトの名無しさん (ワッチョイ 37d9-1MTn) mailto:sage [2016/11/25(金) 16:46:17.82 ID:3a2jMeJO0.net] >>655 を見て、RMAX未満のint乱数をN回発生させてori[]が含まれている回数を LINQで数えたいのですが、こんなのになってしまいました もっと簡単に書ける方法はないでしょうか const int N = 10000; const int RMAX = 10; Random r = new Random(); int c = 0; int[] ori = {1, 5}; Enumerable.Range(1, N).Select(i => new { j = r.Next(RMAX) }).Select(i => ori.Any(j => j == i.j)).Where(i => i).Select(i => { c++; return 0; }).ToArray(); // 0〜9の中にori[]が含まれているかどうか調べる Console.WriteLine($"{N}回の繰り返しで 0〜{RMAX - 1} の中にori[]が含まれていたのは {c} 回でした。");
670 名前:デフォルトの名無しさん (オッペケ Sre7-4iO2) mailto:sage [2016/11/25(金) 17:23:50.79 ID:vVyJsUPAr.net] Selectに副作用書くな
671 名前:デフォルトの名無しさん (ワッチョイ c748-AQyI) mailto:sage [2016/11/25(金) 17:46:39.77 ID:k5F1VYSo0.net] つか毎回乱数作ると検証しようがないよな int[] randoms = new int[N]; for (int i = 0; i < N; i++) randoms[i] = r.Next(RMAX); というのがあったと仮定して以下を実行する c = randoms.Where(ori.Contains).Count();
672 名前:デフォルトの名無しさん (ブーイモ MMc7-/sNf) mailto:sage [2016/11/25(金) 17:51:48.96 ID:yM8tzyplM.net] int count = Enumerable.Range(1, N) .Select(_ => r.Next(RMAX) ) .Count(ori.Contains);
673 名前:デフォルトの名無しさん (ワッチョイ 27ba-lM3r) mailto:sage [2016/11/25(金) 23:44:37.58 ID:8749fss/0.net] 検証は普通、同じシードの疑似乱数使うだろ。
674 名前:デフォルトの名無しさん (オッペケ Sre7-4iO2) mailto:sage [2016/11/26(土) 05:41:07.62 ID:BlR4fLnAr.net] そこで、Stateモナド登場。
675 名前:デフォルトの名無しさん (ワッチョイ 37d9-1MTn) mailto:sage [2016/11/26(土) 15:45:30.50 ID:q0gSFGbR0.net] >>661-663 ありがとうございます Select()に副作用書くのはListだとForEach()があるのですが、配列だと使えないので 無理矢理感がありますが許してください(汗
676 名前:デフォルトの名無しさん (オッペケ Sre7-4iO2) mailto:sage [2016/11/26(土) 15:59:56.88 ID:BlR4fLnAr.net] >>666 許せぬ。 普通に>>663 で良いんでないの?
677 名前:デフォルトの名無しさん (ワッチョイ 1349-lVzu) mailto:sage [2016/11/26(土) 16:01:54.05 ID:pkHe6RQg0.net] >>666 ゆるさん。 根本的にLINQの使い方が間違ってる。
678 名前:デフォルトの名無しさん (ワッチョイ 37d9-1MTn) mailto:sage [2016/11/26(土) 16:46:10.56 ID:q0gSFGbR0.net] >>667-668 駄目ですか 精進します >>664 こうやってみました DateTime dt = DateTime.Now; // 乱数のシード値に使う Random r = new Random((int)dt.Ticks); // 乱数測定1 Random r = new Random((int)dt.Ticks); // 乱数測定2 以下続く
679 名前:デフォルトの名無しさん (ワッチョイ 37d9-1MTn) mailto:sage [2016/11/26(土) 16:58:09.08 ID:q0gSFGbR0.net] あ、違った DateTime dt = DateTime.Now; // 乱数のシード値に使う Random r = new Random((int)dt.Ticks); // 乱数測定1 r = new Random((int)dt.Ticks); // 乱数測定2 以下続く
680 名前:デフォルトの名無しさん (ブーイモ MMaf-VGur) mailto:sage [2016/11/26(土) 17:05:31.40 ID:/HuSQ2djM.net] public static class EnumerableEx { public static IEnumerable<int> Randoms(int seed, int max, int count) { var r = new Random(seed); for(int i = 0; i < count; ++i) yield return r.Next(max); }} c = EnumerableEx.Randoms(seed, RMAX, N).Count(ori.Containts);
681 名前:デフォルトの名無しさん (ワッチョイ abdc-MM3T) mailto:sage [2016/11/26(土) 17:27:30.27 ID:UC4M2NKY0.net] >>671 引数のcountは無しで無限ストリームにした方が美しいと思う 有限にしたければTakeで切ればいい
682 名前:デフォルトの名無しさん (オッペケ Sre7-4iO2) mailto:sage [2016/11/26(土) 20:57:24.75 ID:BlR4fLnAr.net] >>670 続きは?
683 名前:デフォルトの名無しさん (オッペケ Sre7-4iO2) mailto:sage [2016/11/27(日) 02:43:47.55 ID:vLOqtuLor.net] public static IEnumrable<T> Randoms<T>(Func<T> next) { while(true) { yield return next(); } } 任意の乱数アルゴリズムを渡せるようにと考えたけど、もはやランダムとは無関係だよねww
684 名前:デフォルトの名無しさん (ワッチョイ abdc-MM3T) mailto:sage [2016/11/27(日) 07:11:41.91 ID:dEf188sX0.net] >>674 名前が既に機能を表してないのはともかく、これは副作用が前提になるからよくない設計 どこかで副作用を使ってない限りnext()は必ず毎回同じ値になるはず
685 名前:デフォルトの名無しさん (ワッチョイ 370b-PVnu) mailto:sage [2016/11/27(日) 13:07:28.68 ID:ZDMyX7Jh0.net] 普通に何がしたいのか分からない
686 名前:デフォルトの名無しさん (ワッチョイ 87ce-w12Y) mailto:sage [2016/11/28(月) 06:20:00.23 ID:d2SeRThv0.net]
687 名前:乱数列をインデックスで参照したいだけ なんでしょ? [] [ここ壊れてます]
688 名前:デフォルトの名無しさん (ワッチョイ 87d4-TEJY) [2016/11/28(月) 20:53:46.42 ID:jgfNB/jg0.net] 実際のプログラムでデリゲート/イベントをどう使うのが便利なのか、理解できる教材・WEBサイト等があれば教えてください
689 名前:デフォルトの名無しさん (ワッチョイ c748-AQyI) mailto:sage [2016/11/28(月) 21:37:11.66 ID:TQQs9y8p0.net] https://msdn.microsoft.com/ja-jp/library/ms173171.aspx
690 名前:デフォルトの名無しさん (ワッチョイ 4f4c-/sNf) mailto:sage [2016/11/29(火) 10:18:57.84 ID:PfRgidpN0.net] 関数ポインタなイメージだわ
691 名前:デフォルトの名無しさん (ワッチョイ 87ce-w12Y) mailto:sage [2016/11/30(水) 00:56:16.15 ID:H3buRLlE0.net] Win32APIのコールバックに渡せる時点で外部からの見え方は関数ポインタそのもの そこにどうやってインスタンもねじ込んでるのか正確には知らないけど 関数ポインタをユニークなヒープ領域に書いてそれを渡して呼び出させる みたいな気持ち悪いことを裏でやってるんだろう
692 名前:デフォルトの名無しさん (ワッチョイ 87ce-w12Y) mailto:sage [2016/11/30(水) 01:03:41.03 ID:H3buRLlE0.net] 少なくとも1度はヒープ上でコード実行してるはずなんだけど スパイウェア認定されたりしないのはなぜだろう
693 名前:デフォルトの名無しさん (ワッチョイ 279d-lM3r) mailto:sage [2016/11/30(水) 01:04:12.90 ID:w8bfAEOD0.net] 動けばいい
694 名前:デフォルトの名無しさん (ワッチョイ a77b-rApL) [2016/11/30(水) 02:53:33.77 ID:5s/CT6+70.net] >679 Msdnの説明なんて99%糞だよな。頭和杉、マクロバカって書いてある本を 見たことがある。 でもたまに凄くわかりやすいのがある。今日まさにそれに出会って 感想欄に MSDNにしては本質をついていてわかりやすい。こんなにわかりやすい せつめいは初めてだ。 これはMSDNの文章とは違う素晴らしい文章だ。たぶん外注のライターが 書いたものだと思うが、こういう外注さんは大事にしなさい。 ありえないとは思うが、もし万が一社員が書いたものならぜひともボーナス を弾んであげてほしい。 と書いておいた。
695 名前:デフォルトの名無しさん (ワッチョイ 5b3c-0AhV) mailto:sage [2016/11/30(水) 02:59:23.96 ID:PzfaC3Zi0.net] 精神を病んでいる様だからカウンセラーにでも相談したまえ
696 名前:デフォルトの名無しさん (ワッチョイ abdc-MM3T) mailto:sage [2016/11/30(水) 07:35:52.74 ID:TOIBVM0F0.net] >>681 マネージコードからの通常のInvokeや一般のクラスやインターフェースの仮想メソッド呼び出しでも JITのために
697 名前:ッ様の仕組みがあるらしい デリゲートが関数ポインタを持ってるんじゃなくて、呼び出し元(call siteという)ごとのキャッシュとして ネイティブ関数を生成するみたいだ [] [ここ壊れてます]
698 名前:デフォルトの名無しさん (ワッチョイ a77b-rApL) [2016/11/30(水) 10:16:51.02 ID:5s/CT6+70.net] Delegateはクラスを着ていない素っ裸の抽象メソッドだと思う。だから デレッってしてる。 クラスと同様にインスタンスを作成して使うけれども抽象メソッドだから 実態のメソッドを代入して使用する。 その時に実態のメッソッドから名前を剝ぎ取った素っ裸のメソッドが ラムダ式だ。 スッポンポンというところがデレゲートとラムダは似ている。
699 名前:デフォルトの名無しさん (ワッチョイ a77b-rApL) [2016/11/30(水) 10:35:50.72 ID:5s/CT6+70.net] delegate int delSm(int i); //型紙delSmを作成する。 void test() { delSm Sm; //型紙delSmから洋服Smを作成 Sm = (x => x * x); //素っ裸のメソッドにSmを着せる int j = Sm(16); //j = 256 }
700 名前:デフォルトの名無しさん (ワッチョイ 5c03-Z4eY) mailto:sage [2016/12/01(木) 16:54:34.62 ID:0Um+ha3M0.net] C#の質問で無く恐縮ですが VS2013でC#コード入力していますが 補完機能の振る舞いがよくわからないことがあります。 例えば"int"と入力する場合 i→n→tとキーインすると 補完候補は"int"の表示が選択されています。 ここでスペースをキーインすると エディタには"iint"と入力されてしまいます。 どういうことでしょうか? returnもrreturnとなってしまいます。
701 名前:689 (ワッチョイ 5c03-Z4eY) mailto:sage [2016/12/01(木) 16:55:46.18 ID:0Um+ha3M0.net] もしかしてATOKのせいでしょうか。
702 名前:デフォルトの名無しさん (ワッチョイ 6bc0-/mAi) mailto:sage [2016/12/01(木) 19:32:35.80 ID:Zf0m27Yo0.net] TABキーで補完すればいいんじゃね
703 名前:デフォルトの名無しさん (ワッチョイ d1d6-NTgB) mailto:sage [2016/12/01(木) 23:26:48.62 ID:iYDC/6Ae0.net] >>689 ATOK使ってるけど普通に使えてるな VSのサービスパックでも当てたら直るんじゃね?
704 名前:689 (ワッチョイ 5c03-Z4eY) mailto:sage [2016/12/02(金) 08:57:18.65 ID:31Pwg6Qz0.net] >>691 >>692 ありがとうございます。 TABにしても同じなんです。 SPためしてみます。 と、書いていましたが たった今VS2013起動して試してみたところ 問題有りませんでした。 原因はわかりませんが再起動すれば良いようですね。 お騒がせしました。ありがとうございました。
705 名前:初心者 (ワッチョイ 50cf-yaSi) [2016/12/02(金) 14:04:42.72 ID:mPN6uvNG0.net] C#の勉強したいんですけど visualstudioのどれをダウンロードすればいいですか?一番左ですか?
706 名前:デフォルトの名無しさん (アウアウオー Sabe-k+pW) mailto:sage [2016/12/02(金) 14:22:34.32 ID:KR/8JQ+qa.net] オッスオラ極右
707 名前:デフォルトの名無しさん (フォォーッ MM9b-NTgB) mailto:sage [2016/12/02(金) 14:24:44.13 ID:hCuw5ExfM.net] >>694 download.microsoft.com/download/8/0/3/8036DBC2-135E-431D-86FE-C2C53562C9F1/vs_community_JPN.exe
708 名前:デフォルトの名無しさん (ワッチョイ 98d4-NTgB) mailto:sage [2016/12/02(金) 14:44:59.65 ID:ulrrSATP0.net] いままでPro買ってたけどCommunityでいい気がしてきた
709 名前:デフォルトの名無しさん (オッペケ Sr8d-F2U0) mailto:sage [2016/12/02(金) 15:12:50.24 ID:B5+8wL6Vr.net] コミュニティ使っててアプリ作って条件以上の売上出たらどうすればいいの?
710 名前:デフォルトの名無しさん (ワッチョイ 2a02-0Nhh) mailto:sage [2016/12/02(金) 15:32:17.74 ID:mFAqdh2w0.net] 買えばいいんじゃね、そんなんに売れたんなら
711 名前:デフォルトの名無しさん (ワッチョイ 9220-NTgB) mailto:sage [2016/12/02(金) 22:45:54.98 ID:5RQuVDtH0.net] C#というわけではなく、初歩的なことかと思いますが テスト要領書って、本来コーディング前に作っておくものでしょうか? うちの会社じゃ いつもコーディングの後半に作ってるんですが 一般的には
712 名前:どうなんだろうと思いまして [] [ここ壊れてます]
713 名前:デフォルトの名無しさん (ワッチョイ 4dcb-g21N) mailto:sage [2016/12/02(金) 22:56:52.05 ID:2vcaPjiT0.net] マルチポストしてんじゃねえぞチンカス野郎
714 名前:デフォルトの名無しさん (ワッチョイ 115b-25R2) [2016/12/02(金) 23:15:26.91 ID:9K0+rqji0.net] データベース使ったサンプルアプリ作ってみたいのですが、データベースは何を使ったらいいですか?
715 名前:デフォルトの名無しさん (ワッチョイ f4cb-yaSi) mailto:sage [2016/12/02(金) 23:44:10.13 ID:UcIXa3VL0.net] >>702 モノによって癖があるよ インストール方法からして上手くいかないポイントが違う 業務でWindowsアプリ作るならSQLServerExpressがオススメ 絶対使うしね 趣味でレンタルサーバー使うならmysqlが多いかも
716 名前:デフォルトの名無しさん (ワッチョイ d1d6-NTgB) mailto:sage [2016/12/02(金) 23:48:17.42 ID:kbaBWwKx0.net] ファイルコピーだけで簡単に動かしたいのならSQLiteもいいぞ
717 名前:デフォルトの名無しさん (ワッチョイ f4ce-BRVC) mailto:sage [2016/12/02(金) 23:58:41.69 ID:P1j76Eyi0.net] Windows標準で入ってるJet DBが何も入れる必要ない点でオススメ
718 名前:デフォルトの名無しさん (ワッチョイ 2aaf-MLbx) mailto:sage [2016/12/03(土) 00:46:33.44 ID:6QJpBGmN0.net] SQLiteは便利で面白い Firefoxのクッキーの管理なんかにも使われてる
719 名前:デフォルトの名無しさん (ワッチョイ 115b-25R2) [2016/12/03(土) 09:19:05.56 ID:/EDU3A450.net] >>703-706 ありがとうございます! さっそく調べてみます!
720 名前:デフォルトの名無しさん (ワッチョイ 92e5-/mAi) mailto:sage [2016/12/03(土) 10:35:13.28 ID:OhSejOMk0.net] 普段threadを生成してやっていた非同期処理を バージョンアップに合わせてasync await使って実装してみようと思います。 非同期を意識しない場合の元ソースは以下のコード private void btn_click(省略) { var list = getList("なんたら"); } private List<string> getList(string target) { var list = hogehoge関数 return list ; } この中で呼び出し元の btn_click から getList関数を非同期で呼び出すことは可能でしょうか? 可能であればいずれ同期的に使う可能性も含めて getList関数には手を入れたくはないのですが、入れられないのであれば手を加えても問題ありません。 有識者の皆様、何かしらヒントでもご教示いただけれb幸いです。
721 名前:デフォルトの名無しさん (ワッチョイ 92e5-/mAi) mailto:sage [2016/12/03(土) 10:42:36.75 ID:OhSejOMk0.net] 連投失礼 記述ミス修正 getList関数には手を入れたくはないのですが、入れられないのであれば手を加えても問題ありません。 ↓ この中で呼び出し元の btn_click から getList関数を非同期で呼び出すことは可能でしょうか? 可能であればいずれ同期的に使う可能性も含めて getList関数には手を入れたくはないのですが、入れなければいけないのであれば手を加えても問題ありません。 Task<List<string>>にしないといけないんだろうなぁ…とは思いますが…。
722 名前:デフォルトの名無しさん (ワッチョイ 2a02-0Nhh) mailto:sage [2016/12/03(土) 10:56:58.35 ID:rfPwjFy00.net] 普通は同期版と非同期版と二つ定義するんじゃないのか getListは同期関数にしたいの?非同期関数にしたいの?
723 名前:デフォルトの名無しさん (ワッチョイ 39dc-Cf2b) mailto:sage [2016/12/03(土) 11:00:28.76 ID:x7z2pgeG0.net] なんか勘違いしてそう async使うなら最終的にIOやユーザー操作でブロックされるところまで全部非同期で繋がないと意味ないよ?
724 名前:デフォルトの名無しさん (ワッチョイ 839d-5gNI) mailto:sage [2016/12/03(土) 11:03:34.95 ID:n86jitUO0.net] var list = await Task.Run(() => getList("...")); こういうことじゃないの?
725 名前:デフォルトの名無しさん (ワッチョイ 39dc-yaSi) mailto:sage [2016/12/03(土) 13:23:04.99 ID:x7z2pgeG0.net] ところで、asyncを全面的に使ってるとストリームにたかが数バイトを書き込むだけみたいな 時間的粒度の小さいメソッドでもいちいちawaitせざるを得ないことがよくあると思うんだけど、非効率だからまとめて処理できないもんかな 個人的には、全ての書き込みがバッファリングされることが保証されてるAsyncStreamみたいなクラスがあって 後でにまとめてawait FlushAsyncするという考え方の方がWriteAsyncより使いやすいと思うんだけど
726 名前:デフォルトの名無しさん (ワッチョイ 92e5-/mAi) mailto:sage [2016/12/03(土) 13:33:41.53 ID:OhSejOMk0.net] >>710-712 イメージ的には getList←同期 getListAsync←非同期(内部でgetListを呼ぶ) のようになるのかなと。 もとのgetList自体は同期処理で動くようにしておきたかっただけという簡単なものでした。 >>712 さんの言うところで出来てしまいました…。 あっさり過ぎて…ありがとうございました。 これでUIが固まらない為だけの面倒な非同期を書かなくて済みそうです。
727 名前:デフォルトの名無しさん (スッップ Sda8-wK09) mailto:sage [2016/12/03(土) 17:28:43.65 ID:6dOdOU6od.net] 商用で使えるフリーの開発環境ってありますか?
728 名前:デフォルトの名無しさん (ワッチョイ 39dc-yaSi) mailto:sage [2016/12/03(土) 17:42:27.55 ID:x7z2pgeG0.net] >>715 小規模な企業までならVS Communityが商用利用可 Communityが使えない規模ならVS Express
729 名前:デフォルトの名無しさん (ワッチョイ 8d4a-JWTN) mailto:sage [2016/12/03(土) 21:57:51.27 ID:NEbgZC1U0.net] >List<T>も2次元にはできないが、そもそも2次元にする必要がない list<list<T>>で二次元じゃあないの?
730 名前:デフォルトの名無しさん (ワッチョイ 839d-5gNI) mailto:sage [2016/12/03(土) 22:06:20.99 ID:n86jitUO0.net] 広義の二次元だけど狭義の二次元ではない、かな 多次元配列とジャグ配列で呼び分けるから
731 名前:デフォルトの名無しさん (ワッチョイ 1ee1-yaSi) mailto:sage [2016/12/03(土) 22:51:22.62 ID:1XG4MZmv0.net] >>713 その程度なら自分で実装すればよくね?
732 名前:デフォルトの名無しさん (ワッチョイ 6b0d-BRVC) [2016/12/03(土) 23:02:24.03 ID:nNmCZ+K50.net] TreeViewでファイルエクスプローラーを作りましたが ファイルやフォルダの数が多すぎると必ずフリーズします 例えば肥大化した"C:\Windows\WinSxS"を表示するにはどうしたらいいですか?(私の環境ではサブフォルダ数が1万数千あります)
733 名前:デフォルトの名無しさん (ワッチョイ f4ce-BRVC) mailto:sage [2016/12/03(土) 23:27:08.60 ID:55Oi6B7P0.net] >>720 そもそも1万件とか画面に一度に表示できる数じゃないんだから 一部だけ出すとか表示方法を工夫する以外にないよ 既存のファイラーとかを参考にしてみたらどうかね
734 名前:デフォルトの名無しさん (ワッチョイ f4cb-yaSi) mailto:sage [2016/12/04(日) 00:29:04.69 ID:tP3D55j/0.net] >>720 開いたフォルダのみ中身を表示してはどうだろうか?
735 名前:デフォルトの名無しさん (ワッチョイ 5c7b-BMT5) [2016/12/04(日) 20:20:27.84 ID:HFDVK7VF0.net] Rxをテストしようとおもうのだが、 using System.Reactive.Linq; これを追加しても エラー CS0234 型または名前空間の名前 'Reactive' が名前空間 'System' に存在しません (アセンブリ参照があることを確認してください)。 となる。参照を探してもmscore.libしかないがこれをチェックすると 「すでにビルドに組み込まれているのでエラー」になる。 どうしたらいいの?
736 名前:デフォルトの名無しさん (アウアウカー Sa05-F2U0) mailto:sage [2016/12/04(日) 20:35:11.66 ID:iX2mGjzba.net] Rxはインストールしたの? 標準ではないよ
737 名前:デフォルトの名無しさん (ワッチョイ 5c7b-BMT5) [2016/12/05(月) 06:04:42.72 ID:kVcVuvgX0.net] VS Community 2015で Nuget パッケージマネージャー画面でSystem.Reactiveをインストールしようと する 設定は参照にして、パッケージソースは「すべて」 Nuget.org packagesource Microsoft and .NET Microsoft Visual Studio Offline Package にしている。 '.NETFramework,Version=v4.5.2' を対象とするプロジェクト 'WpfApp1' に関して、 パッケージ 'System.Reactive.3.1.1' の依存関係情報の収集を試行しています Unable to load the service index for source packagesource. この要求の送信中にエラーが発生しました。 リモート名を解決できませんでした。: 'packagesource' ========== 終了 ========== インストールできない。 packagesource. このエラーが出るのはパッケージマネージャの設定に 間違いがあるんだろうか?
738 名前:デフォルトの名無しさん (ワッチョイ 5c7b-BMT5) [2016/12/05(月) 07:19:43.60 ID:kVcVuvgX0.net] PM> Install-Package System.Reactive Install-Package : ソース '' 内でパッケージ 'System.Reactive' が見つかりません。 つまりパスが違っている。DefaultPathはどこに設定するのだろうか?
739 名前:デフォルトの名無しさん (ワッチョイ 5c7b-BMT5) [2016/12/05(月) 07:22:18.16 ID:kVcVuvgX0.net] あれっ、頭にきてボタンを押しまくっていたらインストールできた。 なぜだ? わからんが、とにかくインストールできた。手当たり次第に 出たらめにやるのがいいみたいだ。
740 名前:デフォルトの名無しさん (アウアウオー Sabe-wK09) mailto:sage [2016/12/05(月) 21:52:16.25 ID:7n2NXvP5a.net] 「n = n + 1」「n++」「n += 1」 の中で速度が速い、またはメモリの消費が少ない手段はどれですか? 今回の使用目的はループ内でのカウンタです また、それぞれの使い分けがわからないので適切な使用箇所があれば教えてください
741 名前:デフォルトの名無しさん (ワッチョイ 9213-ggLi) mailto:sage [2016/12/05(月) 21:55:01.48 ID:+86vS9TV0.net] >>728 差はないから好きにすればいい
742 名前:デフォルトの名無しさん (ワッチョイ 467d-NTgB) mailto:sage [2016/12/05(月) 22:28:32.97 ID:k7XpTrID0.net] ++はコピーが入る
743 名前:デフォルトの名無しさん (ワッチョイ 4d7b-1jzX) mailto:sage [2016/12/05(月) 22:44:22.01 ID:VOjnBi1e0.net] 出たな、半可通
744 名前:デフォルトの名無しさん (オッペケ Sr8d-E9Xg) mailto:sage [2016/12/06(火) 02:55:06.76 ID:4zSpj2YCr.net] >>727 VSのnugetのインストーラが古いので更新する必要がある場合がある。
745 名前:デフォルトの名無しさん (アウアウカー Sa67-OnqS) mailto:sage [2016/12/09(金) 10:45:19.60 ID:0JyYFlmma.net] >>728 cpy add 1 mov inc add 1
746 名前:デフォルトの名無しさん (JP 0H5f-l58V) mailto:sage [2016/12/09(金) 10:50:44.15 ID:u4ONmpntH.net] それだけで文にするならどうせ最適化されるでしょ 部分式として使ってるならしらんけど
747 名前:デフォルトの名無しさん (ワッチョイ 07ce-3ple) mailto:sage [2016/12/10(土) 21:08:20.94 ID:9pHrXFRT0.net] カウンタならどうでもいいけど インデックスとして使うならunsafe付けてポインタ扱った方がいい
748 名前:デフォルトの名無しさん (ワッチョイ d349-mlnL) mailto:sage [2016/12/10(土) 21:20:26.17 ID:THyFY8cN0.net] そんなのが必要になる場合は限られる。 初心者スレでunsafeを気軽に進めない方が良い。
749 名前:デフォルトの名無しさん (ワッチョイ ebdc-Ts63) mailto:sage [2016/12/10(土) 21:36:24.82 ID:MAlDTlrl0.net] fixedはpinのオーバーヘッドがあるから頻繁に使うとかえって遅くなるよ
750 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 06:33:33.19 ID:caNoEqSZ0.net] >TreeViewでファイルエクスプローラーを作りましたが >ファイルやフォルダの数が多すぎると必ずフリーズします >例えば肥大化した"C:\Windows\WinSxS"を表示するにはどうしたらいいですか? >(私の環>境ではサブフォルダ数が1万数千あります) 自分もこれで悩んでる。1分ごとに測定したデータが1ファイルごとに1年分ある。 60x20x360=43万ファイル これをGetFilesでファイル名を取り出して集計処理しようとするとファイル読み出しで ハングする。 やり方がよくわからないので先輩に聞いたら 「Application.EentDoを入れたらキーが効くのでハングしないよ」 というアドバイスをもらってやってみたが、ダメだった。 で自分で少し調べてみたんだが、 UIの同一スレッドでこれをやると原理的にだめ。処理が重すぎてかならずハングする。 スレッドを分ける方法として、タスクプールを使う方法とスレッド生成がある。 タスクプールを使うのがよい。Async/Await というところまでは分かったんだが、どうやって実現したらいいのかまだよくわからん。
751 名前:デフォルトの名無しさん (ワッチョイ 07d4-QGPA) [2016/12/11(日) 06:47:31.93 ID:fUQnV1N+0.net] 非スタティックなメソッドを呼び出したい場合に、 new クラス名.メソッド名(); とするのはなにか問題があるのでしょうか?
752 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 08:40:31.81 ID:caNoEqSZ0.net] >739 それはコンパイルエラーになるから問題ないと思うが、、、
753 名前:デフォルトの名無しさん (ワッチョイ ebdc-6LJV) mailto:sage [2016/12/11(日) 09:12:08.77 ID:xUW3RgdE0.net] >>739 new クラス名().メソッド名(); の間違いと仮定した上での回答だが、 毎回必ずそのパターンで使用されるのであれば実質staticメソッドと変わらないからstaticメソッドにすることも検討すべき パラメータが複雑な場合にBuilderパターンとFluentなスタイルを組み合わせて、 new Request().WithEncoding(UTF8).with…().Send(); みたいにするのは丁寧に作られてるライブラリだとよくあるけど
754 名前:デフォルトの名無しさん (ワッチョイ 07cb-1E9w) mailto:sage [2016/12/11(日) 09:24:54.90 ID:G916gL+V0.net] >>738 仕様が決まってない問題をAPIの問題にすり替えてる 超たくさんファイルがあるとき結局どうしたいの? 全部表示したいの?一部表示したいの? ユーザに指定させて表示したいの?
755 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 09:42:50.42 ID:caNoEqSZ0.net] 仕様は明白だとおもうが、、、 TreeView表示と同じだが、ファイルを読みだしてグラフ表示しながら同時にファイル 読み出しとその集計処理もやる必要がある。 100ポイントづつを読みだして処理して表示する。 続きを100ポイント読みだして処理して表示する。 このようにシングルスレッドのなかで実現できれば、それが最も良い。 しかし、処理を分割するのはGetFilesのようなライブラリを 使う場合は中断して途中から再開は不可能だ。 そこで、GetFilesは別タスクで動かして非同期処理をするパイプを作ればいい。 task1 thread data = getfiles(); FIFO.add(data); UI thread tree.add( FIFO.read()); というのが検討中の内容だ。
756 名前:デフォルトの名無しさん (ワッチョイ ebdc-Ts63) mailto:sage [2016/12/11(日) 09:42:54.26 ID:xUW3RgdE0.net] >>738 の場合は小手先のコーディングでどうするという問題じゃなくて SparkとかHiveとか使えばいいんじゃないか
757 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 09:51:31.24 ID:caNoEqSZ0.net] それちょっと調べてみるが、C#にキューってのがあるが、それじゃだめなの?
758 名前:デフォルトの名無しさん (ワッチョイ ebdc-Ts63) mailto:sage [2016/12/11(日) 09:54:31.80 ID:xUW3RgdE0.net] >>745 抽象度が全然違う ちゃんとしたビッグデータ処理基盤を使えば、 データを全部HDFSに放り込んでおきさえすれば簡単にデータセット全体にクエリがかけられる いちいち要件に応じて作り込まなくていい
759 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 09:55:28.07 ID:caNoEqSZ0.net] >744 そんな商用ツールは見掛け倒しと思って間違いない。第一広まらないy。
760 名前:デフォルトの名無しさん (ワッチョイ ebdc-Ts63) mailto:sage [2016/12/11(日) 09:58:51.14 ID:xUW3RgdE0.net] >>747 オープンソースだしデータ処理の世界じゃクソ有名だよ? 脊髄反射で拒否する前にちょっとは新しいことに興味持ってみてもいいんじゃないかな、 余計なお世話かもしれないけど
761 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 10:05:36.19 ID:caNoEqSZ0.net] えっ、オープンソースなのか。俄然興味がわいてきた。w
762 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 10:07:25.47 ID:caNoEqSZ0.net] 普通のDBに比べてSpark、Hiveは何がいいの?
763 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 10:12:32.86 ID:caNoEqSZ0.net] グラフ表示するような案件だとSpark SQLがいいみたいだね。 速い。
764 名前:デフォルトの名無しさん (ワッチョイ ebdc-Ts63) mailto:sage [2016/12/11(日) 10:16:20.28 ID:xUW3RgdE0.net] >>750 ざっくりいえば大量データのバッチ処理が速い レイテンシが大きいのでリクエストをリアルタイムに処理して結果を返すようなものには向いていない
765 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 10:33:30.52 ID:caNoEqSZ0.net] C#を最近勉強をはじめたばかりだが、これはすごい言語だな。まさにアルゴリズムの最高哲学 という印象を受けた。これは面白い。 しかし目移りしてどこから取り掛かったらいいのか困る。VBをチョロっとしか経験がないので C#には新しい概念がありすぎてミクロ的にもマクロ的にはほんとに目移りする。 LINQ、WPF、RX、ざっとみたところだ。 いままだ右も左もわからないので取り合えず。適当にReactive Extention からマスターして みようと思っているが、、、、
766 名前:デフォルトの名無しさん (ワッチョイ 0b7b-ymeu) mailto:sage [2016/12/11(日) 11:12:34.07 ID:n3GfLzAe0.net] >>739 newより.の方から優先順位が高いので その例ではクラス名.メソッド名 のスタティックメソッドを呼び出して、その戻り値をnewする事になる なので、newをカッコでくくる (new Date).toISOString();
767 名前:デフォルトの名無しさん (ワッチョイ 0b7b-ymeu) mailto:sage [2016/12/11(日) 11:13:40.49 ID:n3GfLzAe0.net] ああ、すまん、Javascriptスレと間違えてたわ
768 名前:デフォルトの名無しさん (ワッチョイ ebdc-Ts63) mailto:sage [2016/12/11(日) 11:16:14.04 ID:xUW3RgdE0.net] Rxはマイナーな技術だしasync/awaitがわかってれば十分カバーできるからスルーでOK WPFも終わった技術だから今更要らない 専業コーダーじゃないんなら小手先の技術に拘るのはほどほどにして マイクロサービス的な連携だとかクラウド活用だとかもっとマクロな領域へシフトしていった方がいいと思うよ
769 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 13:36:37.71 ID:caNoEqSZ0.net] >756 言わんとするところはよくわかる。考え方の本質は同じだとおもう。 できれば楽にプログラムをしたい。 WPFは終わったのだろうか? たしかに流行ってないよね。w でもMVVMの考え方は間違っていないと思う。 Rxはマイナーな技術なんだろうか? 応用できる範囲がどの程度あるのか はよくわからない。 LINQには少なからず衝撃を受けたので、Push型のRXはなにかとてつもない発見 がありそうな予感がする。 もっともLINQというよりはIEnubableとかデザインパターンの考え方に衝撃を受けた。 マクロ的な技術を使う上でもミクロをある程度は理解していないと、無駄な使い方 をしてしまう可能性があるように思う。その意味では細部まで100%理解しよう なんて思わないが、60%くらいは理解しておきたい。
770 名前:デフォルトの名無しさん (ブーイモ MM07-caEn) mailto:sage [2016/12/11(日) 13:48:02.76 ID:Z923MDQCM.net] ネタや実験以外でRxなんて使ってる現場存在するのか
771 名前:デフォルトの名無しさん (ワッチョイ 5b79-pq3j) mailto:sage [2016/12/11(日) 14:07:20.29 ID:bG1axWcs0.net] フロントならangularについてくるから使うけどC#では使ったことない
772 名前:デフォルトの名無しさん (ワッチョイ 5b79-pq3j) mailto:sage [2016/12/11(日) 14:12:00.35 ID:bG1axWcs0.net] angularでもRxはtoPromiseしか使わないから使ってないような物か
773 名前:デフォルトの名無しさん (ワッチョイ d349-mlnL) mailto:sage [2016/12/11(日) 14:12:51.19 ID:31wztqOV0.net] >>743 GetFiles()って、Directory.GetFiles()のこと? それだったら、代わりにDirectory.EnumerateFiles()を使えば逐次処理出来るよ。
774 名前:デフォルトの名無しさん (ワッチョイ d349-mlnL) mailto:sage [2016/12/11(日) 14:29:28.43 ID:31wztqOV0.net] >>739 恐らく、やりたいのは (new クラス名).メソッド名(); ってことだと思うけど、何度も使う場合は毎回newすることになるので非効率。 また、IDisposeなクラスの場合はDispose()を呼べない。 上記2つに問題ないなら使っても構わない。staticメソッドにすべきだけどね。
775 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 14:49:28.21 ID:caNoEqSZ0.net] >それだったら、代わりにDirectory.EnumerateFiles()を使えば逐次処理出来るよ。 それなかったな。 会社がVs2008なのでw Vs2008で.net Framework4.5とかつかえるんだろうか?
776 名前:デフォルトの名無しさん (ブーイモ MM07-caEn) mailto:sage [2016/12/11(日) 14:58:46.78 ID:Z923MDQCM.net] なきゃ実装すればいい
777 名前:デフォルトの名無しさん (ワッチョイ cb5b-w4ID) [2016/12/11(日) 14:59:38.20 ID:PxfwJXGz0.net] こんな感じで構造体配列の中身をIntPtrにコピーしたいんですが どういう方法がありますか? struct A{ int x=0,y=1,z=2; } A a = new A(); IntPtr ptr; Marshal.StructureToPtr(a, ptr, false);
778 名前:765 (ワッチョイ cb5b-w4ID) mailto:sage [2016/12/11(日) 15:00:53.89 ID:PxfwJXGz0.net] >>765 すいません。領域確保(AllocCoTaskMem)のところは省略してます。
779 名前:デフォルトの名無しさん (オッペケ Sr27-w4ID) [2016/12/11(日) 15:40:06.69 ID:pNKp5sE/r.net] List<string> list = new List<string>() {"hage", "namahage"}; List<string> list = new List<string> {"hage", "namahage"}; どっちもいけるんだけどどう違うの?
780 名前:デフォルトの名無しさん (ワッチョイ 07cb-1E9w) mailto:sage [2016/12/11(日) 15:41:48.31 ID:G916gL+V0.net] >>743 でも現実には処理が間に合わないわけじゃん それでも一気に表示する仕様は変えないのか? エクスプローラーではできてるのか?とか Windowsのコピーって動作だって早く終われば進捗ウィンドウなんて出さないけど 長くかかれば進捗ウィンドウが出てくるわけよ
781 名前:デフォルトの名無しさん (ワッチョイ d349-mlnL) mailto:sage [2016/12/11(日) 15:48:11.13 ID:31wztqOV0.net] >>763 肝心な条件を後だしとか酷いな。 Directory.EnumerateFiles()は.Net 4からだけど、VS2008は.Net3.5までだな。 .Net3.5じゃ、Async/AwaitどころかTaskも使えないぞ。 >>739 で用語が混じってるけど、スレッド/スレッドプール/タスクね。
782 名前:デフォルトの名無しさん (ワッチョイ d349-mlnL) mailto:sage [2016/12/11(日) 15:55:26.64 ID:31wztqOV0.net] Directory.GetFiles()は全てのファイルを取得するまで処理が戻ってこないから、バックグラウンド処理にした所で結局待たされる。 逐次処理がしたいなら、Win32API使ってDirectory.EnumerateFiles()のようなものを独自実装するしかないな。
783 名前:765 (ワッチョイ cb5b-w4ID) [2016/12/11(日) 17:07:16.26 ID:PxfwJXGz0.net] こんな風に構造体の配列の要素ひとつずつをIntPtrで確保した領域にコピーしようと したのですが、こういう方向性では無理ですか? IntPtr ptr = Marshal.AllocCoTaskMem(Marshal.SizeOf(typeof(A))*a.Length); for(int i = 0; i < a.Length; ++i){ Marshal.StructureToPtr(a[i], ptr+i*size, false); }
784 名前:765 (ワッチョイ cb5b-w4ID) mailto:sage [2016/12/11(日) 17:20:36.88 ID:PxfwJXGz0.net] >>771 あーこれで問題なくいけてましたwお騒がせしました。
785 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 17:56:21.30 ID:caNoEqSZ0.net] >770 そういうことか。 それでDoEventが聞かなかったんだね。 >769 Net4をダウンロードして、参照すればいいだけかとおもっていたが むりか?
786 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 18:00:11.20 ID:caNoEqSZ0.net] >770 System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(@"C:\test"); System.IO.FileInfo[] files = di.GetFiles("*.txt", System.IO.SearchOption.AllDirectories); //ListBox1に結果を表示する foreach (System.IO.FileInfo f in files) { ListBox1.Items.Add(f.FullName); ここでキューにいれればいいやん。 }
787 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 18:06:46.94 ID:caNoEqSZ0.net] >でも現実には処理が間に合わないわけじゃん >それでも一気に表示する仕様は変えないのか? キューから取り出して表示するんなら、UIがわで順次表示できるよ。 問題はUIで超重たい処理がはいるのでハング状態になるということだけ でしょ。 UIが動けば、ブレーク中断したり任意にできる。
788 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 20:18:29.55 ID:caNoEqSZ0.net] SparkはC#サポートしてないよ。C#からどうやってつかうの?
789 名前:デフォルトの名無しさん (ワッチョイ ebdc-6LJV) mailto:sage [2016/12/11(日) 22:29:10.18 ID:xUW3RgdE0.net] そんなもん別プロセスでやりゃいいでしょ パラメータや結果の受け渡しはRPC(IPC)使ってもいいけど、今回の要件ならファイルベースでもオーバーヘッドは全く無視できる
790 名前:デフォルトの名無しさん (ワッチョイ 07cb-1E9w) mailto:sage [2016/12/11(日) 22:30:49.68 ID:G916gL+V0.net] 一個一個入れて描画されてるから遅かったりして?
791 名前:デフォルトの名無しさん (ワッチョイ d723-xm+r) mailto:sage [2016/12/12(月) 01:48:31.95 ID:jfe+O/Es0.net] >>771 .NET 4.0以降ならこういうのもあるよ、Marshal.AlignedSizeOf<T>()でアライメントされるが https://msdn.microsoft.com/ja-jp/library/system.runtime.interopservices.safebuffer 派生クラスでhandleに確保済みポインタを設定し、Initialize<T>()等でポインタ領域も指定 StructureToPtrはジェネリックメソッドでさえも非ジェネリックのラッパーっぽいので パフォーマンスは期待できない、unsafeで良ければ構造体ポインタ使った方が良いかもね
792 名前:デフォルトの名無しさん (ワッチョイ cb5b-w4ID) mailto:sage [2016/12/12(月) 02:20:55.85 ID:JnfesTFd0.net] >>779 おぉ〜情報ありがとうございます! なるほどそういうのもあるんですね。 教えて頂いた事を参考にさせて頂いてどうやるかもうちょっと考えてみます。
793 名前:デフォルトの名無しさん (ワッチョイ ebdc-6LJV) mailto:sage [2016/12/12(月) 06:39:25.29 ID:w8oqDcFY0.net] bittableな構造体ならマネージ配列にGCHandleを割り当ててAddrOfPinnedObjectという手もあるよ unsafeならfixedステートメントがだいたい等価 いちいちアンマネージなバッファを割り当てたり更新内容をマネージコードに書き戻したりしなくていいから楽
794 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/12(月) 08:05:25.67 ID:Jwz8x4f60.net] >そんなもん別プロセスでやりゃいいでしょ >パラメータや結果の受け渡しはRPC(IPC)使ってもいいけど、今回の要件なら >ファイルベースでもオーバーヘッドは全く無視できる 全然意味がわからない。C#でCSVを作ったとして 1.C#からScalarにクエリを送信して、 2.Sparkの処理終了を待つ 3.結果を受信する。 これをC#でプログラムして、Scalarでもプログラムするってこと? 言うのは簡単だが、、、、例でもなきゃ調べてプログラムするのに1週間はかかりそう。w 本質的な情報が欠落しているとおもうよ。こんなのは初心者には全然意味がわからない。
795 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/12(月) 08:06:12.67 ID:Jwz8x4f60.net] >777 こういうのを使えってことだろうか? Mobius: C# API for Spark
796 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/12(月) 08:10:10.92 ID:Jwz8x4f60.net] var lines = sparkContext.TextFile(@"hdfs://path/to/input.txt"); var words = lines.FlatMap(s => s.Split(' ')); var wordCounts = words.Map(w => new KeyValuePair<string, int>(w.Trim(), 1)) .ReduceByKey((x, y) => x + y); var wordCountCollection = wordCounts.Collect(); wordCounts.SaveAsTextFile(@"hdfs://path/to/wordcount.txt"); こんな感じでC#からSparkをコントロールしたいのだが、もっとも一般的で初心者向け な簡単な方法はなにでしょうか?
797 名前:デフォルトの名無しさん (ブーイモ MM2f-6LJV) mailto:sage [2016/12/12(月) 08:30:36.13 ID:FdLiOBdBM.net] >>784 それを普通にScalaかPythonかJavaで書いてC#からProcess.Startで呼べばいい なんでもC#でやる必要ない
798 名前:デフォルトの名無しさん (オッペケ Sr27-l58V) mailto:sage [2016/12/12(月) 11:23:30.02 ID:FEnMQE8Ar.net] 誰も>>767 に答えられないの?
799 名前:デフォルトの名無しさん (ブーイモ MM2f-6LJV) mailto:sage [2016/12/12(月) 11:31:59.68 ID:FdLiOBdBM.net] >>786 違いはない
800 名前:デフォルトの名無しさん (アウアウオー Sa3f-ff1P) mailto:sage [2016/12/12(月) 11:55:48.82 ID:DdSBjDaJa.net] どうでもいいけどここにちゃんとした説明があるな https://msdn.microsoft.com/ja-jp/library/bb308966.aspx#topic12
801 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/12(月) 14:45:07.46 ID:Jwz8x4f60.net] >785 なるほど。 傾向を掴むだけの場合にはいいけれども、アプトプットの表現を加工したいような 場合にはやはりC#でないと、、、となって結局はC#が必要になるような気がする。 JavaもC#も言語的にはそんなに変わらないが、インテリセンスのないようなIDE では作業できないと思わないか? Scalaとか触ってはみたがインテリセンスがないのでこれでは使えない。 インテリセンスがあればうろ覚え程度でもなんとかなる。
802 名前:デフォルトの名無しさん (ワッチョイ b741-mm6H) [2016/12/12(月) 15:32:39.38 ID:9sS+uj7w0.net] 未指定だと Javaはpublicに C#はprivateになるのは かなりデカイ違い
803 名前:デフォルトの名無しさん (ワッチョイ 5b79-pq3j) mailto:sage [2016/12/12(月) 15:56:55.39 ID:snQzvIqt0.net] >>790 javaはppだぞ
804 名前:デフォルトの名無しさん (ワントンキン MMef-g0tO) mailto:sage [2016/12/12(月) 16:46:36.53 ID:cpVlzpwxM.net] peek to peek ?
805 名前:デフォルトの名無しさん (ワッチョイ 5b79-pq3j) mailto:sage [2016/12/12(月) 17:00:27.95 ID:snQzvIqt0.net] package private
806 名前:デフォルトの名無しさん (ブーイモ MM47-caEn) mailto:sage [2016/12/12(月) 18:52:15.45 ID:VeOEVzI1M.net] えっJavaってIDEにインテリセンスもないのか
807 名前:デフォルトの名無しさん (ワッチョイ 5b79-pq3j) mailto:sage [2016/12/12(月) 19:44:00.02 ID:snQzvIqt0.net] >>794 Ctrl+spaceで出すか、設定からいつでも出るようにしないといけない
808 名前:デフォルトの名無しさん (ワッチョイ 5f73-drn7) mailto:sage [2016/12/12(月) 23:05:44.03 ID:dBjxs9jc0.net] Datatablのフィールドに氏名があったとして Linqで荒川のindex(rowの位置)を取得するにはどう書けばいいのですか?
809 名前:デフォルトの名無しさん (ワッチョイ ebdc-Ts63) mailto:sage [2016/12/12(月) 23:11:46.39 ID:w8oqDcFY0.net] >>796 そんなことはしない データソースに直接クエリするべき
810 名前:デフォルトの名無しさん (ワッチョイ 5f73-drn7) mailto:sage [2016/12/12(月) 23:30:47.31 ID:dBjxs9jc0.net] >>797 indexをforで探して別のフィールドの国語、数学の点を変えるでやっているんだけど forじゃなくてLinqで探せないかなと思って、forよりLinqのが早い?かなと
811 名前:デフォルトの名無しさん (ワッチョイ 6b23-WrC4) mailto:sage [2016/12/12(月) 23:34:13.53 ID:/DQxiOau0.net] >>798 行数が少ないだけでスピードは大して変わらんよ
812 名前:デフォルトの名無しさん (ワッチョイ b790-d424) mailto:sage [2016/12/13(火) 23:38:21.93 ID:3IrbMGrr0.net] カレンダーを作りたいのですがフォームに表示する場合どのコントロールアイテムを使えばいいのかわかりません 使えそうなコントロールアイテムってありますか?
813 名前:デフォルトの名無しさん (ブーイモ MM07-6LJV) mailto:sage [2016/12/13(火) 23:45:34.29 ID:D1DGYHRwM.net] WebBrowserでGoogleカレンダー表示しとけ
814 名前:デフォルトの名無しさん (ワッチョイ b790-d424) mailto:sage [2016/12/13(火) 23:45:54.00 ID:3IrbMGrr0.net] すいません、質問内容を変えます MonthCalenderアイテムのたとえば第1・3火曜日だけを色を変えたりとかってどうやるんでしょうか?
815 名前:デフォルトの名無しさん (ワッチョイ ebdc-Ts63) mailto:sage [2016/12/14(水) 01:12:4
] [ここ壊れてます]
816 名前:7.69 ID:dZsAFSxQ0.net mailto: 簡単な方法はない 出来合いのカレンダーコンポーネントなんかHTMLなら腐るほどあるから 今時WinFormsなんかやめてASP.NET MVCでWebアプリとして作ることをお勧めする [] [ここ壊れてます]
817 名前:デフォルトの名無しさん (ワッチョイ d349-mlnL) mailto:sage [2016/12/14(水) 01:25:03.42 ID:ymoBJubC0.net] 何だろね、この強引なWEB推し。 初心者がいきなりASP.NET MVCとか無理だろ。
818 名前:デフォルトの名無しさん (ワッチョイ 3f19-i2Au) mailto:sage [2016/12/14(水) 01:50:56.59 ID:WNb69LWH0.net] webアプリってあんまり好きじゃない
819 名前:デフォルトの名無しさん (スププ Sd2f-8RvK) mailto:sage [2016/12/14(水) 02:05:02.38 ID:0k2o8obnd.net] デスクトップアプリ作りたい人にWebアプリ薦めるとか頭おかしいだろ
820 名前:デフォルトの名無しさん (ワッチョイ 07cb-1E9w) mailto:sage [2016/12/14(水) 22:24:55.46 ID:AUUgXdZT0.net] あー、どうだろ? 今時、DBにも繋がらないゴミになんか価値あるの? って思う メモ帳ですらgoogleでクラウド化してくれたことでやばいぐらい利便性が上がってる
821 名前:デフォルトの名無しさん (スププ Sd2f-8RvK) mailto:sage [2016/12/14(水) 22:39:26.79 ID:0k2o8obnd.net] >>807 デスクトップアプリがDBに繋がらないって意味分からん
822 名前:デフォルトの名無しさん (ワッチョイ 3faf-i2Au) mailto:sage [2016/12/14(水) 22:46:30.91 ID:iFO9XKWI0.net] デスクトップアプリでDBならSQLiteとかでもOnedriveみたいにファイルを置くだけで同期できるやつを使えば鯖なくても簡単にクラウド化できるし ローカルのファイル書き込みと同じように使えるから初心者でも楽でいいよ
823 名前:デフォルトの名無しさん (ワッチョイ 6b23-WrC4) mailto:sage [2016/12/14(水) 23:01:05.01 ID:4HnH0eA/0.net] >>809 SQLiteは、同時書き込みサポートしていないから、当該アプリケーション専用かつ、二重起動不可にしないと何かと問題起こるでしょ
824 名前:デフォルトの名無しさん (スププ Sd2f-8RvK) mailto:sage [2016/12/14(水) 23:06:38.72 ID:0k2o8obnd.net] >>810 用途に合わせてDB選択すればいいじゃないですか
825 名前:デフォルトの名無しさん (ワッチョイ 34cb-Wqrw) mailto:sage [2016/12/15(木) 00:01:01.86 ID:I51Ec/8p0.net] >>808 クラウド的な意味で なんでもネットに繋げて見るべきだと思うな俺は
826 名前:デフォルトの名無しさん (スププ Sdb8-WTZK) mailto:sage [2016/12/15(木) 00:37:49.10 ID:R3vgAk4Qd.net] >>812 ?
827 名前:デフォルトの名無しさん (ブーイモ MMb8-JvIx) mailto:sage [2016/12/15(木) 00:50:31.08 ID:ArFpv1XpM.net] いまやC#も舞台は完全にWebに移ったからなあ .NET Coreも正式リリースされ、C#はクラウド開発の主要技術として本格的に覇権を取りにいく時代に入った デスクトップアプリなどという終わった技術に固執している場合ではないよ
828 名前:デフォルトの名無しさん (ワッチョイ 9c9d-0G5/) mailto:sage [2016/12/15(木) 01:56:47.57 ID:UyqFS3sy0.net] ※個人の感想です
829 名前:デフォルトの名無しさん (ワッチョイ 350c-8I6M) mailto:sage [2016/12/15(木) 01:58:26.76 ID:roF9qDxe0.net] >>814 仕事でデスクトップアプリ作ることないの? いままでデスクトップアプリだったけど、Webに移行できたアプリって例えばどういうのがあるの?
830 名前:デフォルトの名無しさん (ワッチョイ 413c-awGI) mailto:sage [2016/12/15(木) 03:06:24.93 ID:hXmFu1Hy0.net] >>816 業務アプリはWeb移行流行っただろ デスクトップアプリは、開発ツールとしてならちょくちょくつくるね
831 名前:デフォルトの名無しさん (スププ Sdb8-WTZK) mailto:sage [2016/12/15(木) 04:10:25.23 ID:R3vgAk4Qd.net] .NET Coreって別にクラウド用じゃないんだけど
832 名前:デフォルトの名無しさん (ワントンキン MM40-Qnvt) mailto:sage [2016/12/15(木) 06:03:28.59 ID:4tPXC7shM.net] PAINT DOT NET がWebに移植されたの?
833 名前:デフォルトの名無しさん (JP 0H57-8I6M) mailto:sage [2016/12/15(木) 10:17:25.60 ID:AviUmHkiH.net] デスクトップアプリでもクラウド上のDBに接続できるし>>807 は意味わからんな MS的にAzure App ServiceとXamarinと.NET Core推しでUWP含めデスクトップアプリを捨てにかかってる感はある
834 名前:デフォルトの名無しさん (スププ Sdb8-WTZK) mailto:sage [2016/12/15(木) 10:33:10.37 ID:QVvM9ANid.net] >>820 xamarinはUWPサポートしてるんですが
835 名前:デフォルトの名無しさん (ワッチョイ 8001-Vn9u) mailto:sage [2016/12/15(木) 10:42:37.80 ID:FQrvRs280.net] 会社で使う業務アプリなら、使い勝手がどうとかレスポンスがどうとか文句言っても しょうがないからWebアプリでも仕方なしに使うけど、個人で使うならよっぽど何か メリットがない限り、Webアプリを選ぶ事はないわな
836 名前:デフォルトの名無しさん (ドコグロ MM1c-Wqrw) mailto:sage [2016/12/15(木) 11:52:17.88 ID:JOHJeedcM.net] >>822 え? むしろスマホも枠に入れたらwebアプリのが多くならない?
837 名前:デフォルトの名無しさん (ドコグロ MM74-f0Z7) mailto:sage [2016/12/15(木) 12:11:23.13 ID:oGetrQbmM.net] スマホアプリ全部をWebアプリに含めるなよ
838 名前:デフォルトの名無しさん (ワッチョイ 8001-NX/j) mailto:sage [2016/12/15(木) 12:12:53.08 ID:FQrvRs280.net] スマホの話をしてるつもりはないんだけどなw
839 名前:デフォルトの名無しさん (ワンミングク MM40-BQpQ) mailto:sage [2016/12/15(木) 12:33:06.76 ID:7KRIzockM.net] https://chrome.google.com/webstore/detail/%E3%81%AF%E3%81%A6%E3%81%AAng/mbgdnfmdelffjdhkdggilmphfdihnmcj?hl=ja
840 名前:デフォルトの名無しさん (ワッチョイ f2af-fzYk) mailto:sage [2016/12/15(木) 15:47:36.94 ID:cs8YXCvF0.net] スマホアプリもデスクトップと同じようなものだと思ってたけど違うの? ソシャゲー以外はゲームもそれ以外もネット無しでも動くのが多いけど
841 名前:デフォルトの名無しさん (スププ Sdb8-WTZK) mailto:sage [2016/12/15(木) 16:19:58.27 ID:QVvM9ANid.net] >>827 同じに決まってますやん っていうかもしかして デスクトップアプリ=通信機能なしのアプリ Webアプリ=通信機能ありのアプリ と思ってる人いる?
842 名前:デフォルトの名無しさん (ワッチョイ 3976-ayWP) [2016/12/15(木) 20:22:44.73 ID:JHzpWXH70.net] ローカルファイルの存在がある限りはデスクトップアプリなくならんよなあ electronとかでテクノロジー的には統一されるのかもしれんが
843 名前:デフォルトの名無しさん (ワッチョイ 39d9-0Nmv) mailto:sage [2016/12/15(木) 20:50:15.58 ID:0F4R16IB0.net] アーキテクチャーの話になってきてるからスレタイ読んで方向修正しろ
844 名前:デフォルトの名無しさん (ワッチョイ 34cb-Wqrw) mailto:sage [2016/12/15(木) 22:01:11.28 ID:I51Ec/8p0.net] c#でスマフォアプリ作りたいよ!
845 名前:デフォルトの名無しさん (スププ Sdb8-WTZK) mailto:sage [2016/12/15(木) 22:07:11.09 ID:QVvM9ANid.net] >>831 どうぞどうぞ
846 名前:デフォルトの名無しさん (ワッチョイ 3542-XOD+) mailto:sage [2016/12/15(木) 22:41:41.93 ID:Uw+BYsZj0.net] >>831 つunity
847 名前:デフォルトの名無しさん (オッペケ Sr29-I6+1) mailto:sage [2016/12/15(木) 23:42:14.65 ID:FEXhH1Xvr.net] >>833 なんでそこでUnity出てくるんだよ アプリ=2D/3Dゲームとは限らんだろ
848 名前:デフォルトの名無しさん (アウアウイー Sa87-WqSn) mailto:sage [2016/12/15(木) 23:52:53.04 ID:JZ4+gGwKa.net] >>834 つunity
849 名前:デフォルトの名無しさん (ワッチョイ 3542-XOD+) mailto:sage [2016/12/15(木) 23:53:04.54 ID:Uw+BYsZj0.net] >>834 ゲームエンジンだからってゲーム製作を強制されてるわけじゃないしマルチプラットフォーム楽だから提案しただけ 情報はそれなりに多いしC#でスマホアプリ開発したいなら余裕で候補に入ってくると思うけど
850 名前:デフォルトの名無しさん (ドコグロ MM74-f0Z7) mailto:sage [2016/12/15(木) 23:55:29.59 ID:oGetrQbmM.net] ゲームでもないのにUnityはありえないな
851 名前:デフォルトの名無しさん (ワッチョイ 35dc-JvIx) mailto:sage [2016/12/16(金) 00:09:14.95 ID:oD0nT6zl0.net] 今はXamarinもタダでVSに付いてくるからな
852 名前:デフォルトの名無しさん (ササクッテロル Sp29-DuXA) mailto:sage [2016/12/16(金) 14:15:42.62 ID:+kSjzPrMp.net] >>837 Unity使ってゲームじゃないもの複数リリースしてるわ俺
853 名前:デフォルトの名無しさん (スププ Sdb8-WTZK) mailto:sage [2016/12/16(金) 14:58:58.27 ID:2fwYBe0Xd.net] 変わった人ですね
854 名前:デフォルトの名無しさん (JP 0Hf9-hLkw) mailto:sage [2016/12/16(金) 16:48:03.99 ID:q/3Oja+oH.net] Xamarinってスマホ用のちょっとしたアプリをC#でちょちょいと書くくらいの用途だったら 十分使えるのかね?
855 名前:デフォルトの名無しさん (ワッチョイ 794a-xySp) mailto:sage [2016/12/16(金) 17:30:52.01 ID:3vYA7mHR0.net] >>814 CoreってまだPreviewでしょ?
856 名前:デフォルトの名無しさん (ワッチョイ 3179-fmwP) mailto:sage [2016/12/16(金) 17:31:55.76 ID:OhRUtX+J0.net] ionic2でスマホアプリ作った方が楽じゃない?
857 名前:デフォルトの名無しさん (ワッチョイ 9523-8I6M) mailto:sage [2016/12/16(金) 18:33:01.02 ID:pxUpeQjw0.net] >>842 www.publickey1.jp/blog/16/net_core_10_redhat.html オープンソースの「.NET Core 1.0」、マイクロソフトが正式リリース。Windows/Linux/macOSに対応。 2016年6月28日
858 名前:デフォルトの名無しさん (スププ Sdb8-WTZK) mailto:sage [2016/12/16(金) 19:33:08.33 ID:2fwYBe0Xd.net] >>841 プログラマーのスキル次第だよ
859 名前:デフォルトの名無しさん (ワッチョイ 34cb-rqOZ) mailto:sage [2016/12/17(土) 20:24:02.58 ID:qwypf80K0.net] >>842 Cora!何ねぼけたこと言ってんだ!
860 名前:デフォルトの名無しさん (ワッチョイ a030-0Nmv) mailto:sage [2016/12/17(土) 21:23:42.16 ID:iwmBtcKB0.net] 審議拒否
861 名前:デフォルトの名無しさん (ワッチョイ bf0d-zrF5) [2016/12/19(月) 17:35:36.43 ID:alVbxlzl0.net] 無名関数をその場で実行したいのですがどうやればいいですか? public void Hoge() { int fuga = 0; //JSだと (function() { fuga++; })(fuga); みたいな書き方 () => { fuga++; } Console.Write(fuga.ToString()); // 1 }
862 名前:デフォルトの名無しさん (ワッチョイ b779-fmwP) mailto:sage [2016/12/19(月) 17:55:39.16 ID:C2gHCNQF0.net] jsと同じ仕方で出来ない? (()=>{})()
863 名前:デフォルトの名無しさん (ワッチョイ bf0d-zrF5) [2016/12/19(月) 18:00:28.82 ID:alVbxlzl0.net] >>849 「メソッド名が必要です」とエラーが出ます。何か間違っているのでしょうか・・・? i.imgur.com/xkxr4EQ.jpg
864 名前:デフォルトの名無しさん (ワッチョイ 9519-qvaQ) mailto:sage [2016/12/19(月) 18:07:22.05 ID:/uogIQCg0.net] 型が必要 new Action(() => fuga++)(); ((Action)(() => fuga++)))();
865 名前:デフォルトの名無しさん (ワッチョイ bf0d-zrF5) [2016/12/19(月) 18:22:45.50 ID:alVbxlzl0.net] >>851 できました! ありがとうございます!
866 名前:デフォルトの名無しさん (アウアウオー Sa36-yl9W) mailto:sage [2016/12/19(月) 18:43:30.73 ID:3c7S3m0Fa.net] 何の意味がw
867 名前:デフォルトの名無しさん (ワッチョイ b779-fmwP) mailto:sage [2016/12/19(月) 18:55:26.87 ID:C2gHCNQF0.net] あっそっか C#はscalaとかjsと違って名前で判別してるんだった
868 名前:デフォルトの名無しさん (ブーイモ MMe5-JvIx) mailto:sage [2016/12/19(月) 19:16:31.85 ID:U/zOmskaM.net] デリゲート型宣言は、イベントをオブジェクト指向に持ち込むためだけにデリゲートが存在していた時代の名残だね 今作り直したら確実に無くなるものの筆頭
869 名前:デフォルトの名無しさん (ワキゲー MMe6-qmcu) mailto:sage [2016/12/19(月) 19:24:00.11 ID:s6nMQ4X7M.net] 多値がまだない今だとref/outが
870 名前:デフォルトの名無しさん (アウアウオー Sa36-yl9W) mailto:sage [2016/12/19(月) 19:34:56.44 ID:3c7S3m0Fa.net] >>855 そんなわけないでしょw 勘違いはなはだしいな
871 名前:デフォルトの名無しさん (ブーイモ MMe5-JvIx) mailto:sage [2016/12/19(月) 20:16:21.66 ID:U/zOmskaM.net] >>857 昔はデリゲートなんかほんとにイベントの裏方のカスみたいな存在だったよ もはや死語となったマルチキャストデリゲートも今じゃありえない設計判断
872 名前:デフォルトの名無しさん (ブーイモ MM8d-Qnvt) mailto:sage [2016/12/19(月) 20:27:48.59 ID:Ph61c/PCM.net] そうなのか?Taskへの書き換えが楽だからマルチキャスト多用してるわ
873 名前:デフォルトの名無しさん (ワッチョイ 9d23-8I6M) mailto:sage [2016/12/19(月) 20:38:22.46 ID:OLcwTH7T0.net] prismのEventAggregatorでは、マルチキャストどころか多対多のイベントがサポートされている これとprism..Unitiy使い始めると設計が根本から変わわるよね
874 名前:デフォルトの名無しさん (ワッチョイ 35dc-JvIx) mailto:sage [2016/12/19(月) 20:43:17.00 ID:t+mkU7Kd0.net] TaskならContinueWithやWhenAll使いなよ マルチキャストだと戻り値取れないだろ? 後でTaskに乗り換えようとしてもコードが副作用だらけになってて排他処理が必要になるはずだから 置き換えはそう簡単にはいかないだろう
875 名前:デフォルトの名無しさん (ワンミングク MM40-Qnvt) mailto:sage [2016/12/19(月) 20:46:00.65 ID:cSqZiFK0M.net] いや呼び出し部はちゃんど自分でバラして戻り値取ってるよ
876 名前:デフォルトの名無しさん (ワッチョイ 35dc-JvIx) mailto:sage [2016/12/19(月) 20:50:55.64 ID:t+mkU7Kd0.net] >>862 それマルチキャスト使う意味ある? List<Func<>>でいいじゃん MulticastDelegateをバラすと型情報も無くなるしパフォーマンスも悪い 百害あって一理なし
877 名前:デフォルトの名無しさん (ワッチョイ 2d5b-yrUh) [2016/12/19(月) 22:35:52.95 ID:SUXs8zgR0.net] スレチかもしれませがすみません C#の勉強の延長でASPでwebアプリ作ってみようかと思ってるんですがASP.NETでのwebアプリの開発って主流の一つに入るんでしょうか
878 名前:デフォルトの名無しさん (ワッチョイ 35dc-6+SE) mailto:sage [2016/12/19(月) 22:41:34.98 ID:t+mkU7Kd0.net] >>864 今から始めるならASP.NET MVCにしとけ 無印の方のASP.NET(WebForms)はドカタ技術
879 名前:デフォルトの名無しさん (ワッチョイ 413c-bVUl) mailto:sage [2016/12/19(月) 23:07:17.43 ID:MBhcE2/40.net] >>864 Webアプリで何がしたいの?
880 名前:デフォルトの名無しさん (ワッチョイ 2d5b-yrUh) [2016/12/19(月) 23:08:48.47 ID:SUXs8zgR0.net] >>865 ありがとうございます ASP.NETの知識無しでMVCのほうから入っても問題ないのですか?
881 名前:デフォルトの名無しさん (ワッチョイ 2d5b-yrUh) [2016/12/19(月) 23:13:07.51 ID:SUXs8zgR0.net] >>866 特に決めてはいないですが、在庫管理やらの業務系が出来ればと考えてます
882 名前:デフォルトの名無しさん (ワッチョイ 413c-bVUl) mailto:sage [2016/12/19(月) 23:20:50.16 ID:MBhcE2/40.net] >>868 それなら.NET CoreじゃなくてまだFullの.NET Frameworkでいいね
883 名前:デフォルトの名無しさん (ワッチョイ 35dc-6+SE) mailto:sage [2016/12/19(月) 23:53:29.04 ID:t+mkU7Kd0.net] >>867 別物だから問題ない .NET開発としてではなく一般的なWeb開発の技術として主流かどうかを気にしてるなら断然MVCの方がいい いわゆるWebMVCといってWeb開発においては非常に一般的なアーキテクチャを採用してるからな 無印の方はWinFormsのようなものを無理やりWeb上に再現した変態技術だが、 お前らの独自技術はもういいからWebらしいフレームワークが欲しいというニーズに応えて「普通な」MVCができた
884 名前:デフォルトの名無しさん (ワッチョイ 413c-bVUl) mailto:sage [2016/12/19(月) 23:54:58.14 ID:MBhcE2/40.net] >>870 今どき無印とは言わねーよ
885 名前:デフォルトの名無しさん (ワッチョイ bf49-TtuQ) mailto:sage [2016/12/19(月) 23:57:07.79 ID:yUAE2IHm0.net] >>867 問題ない。 >>869 いきなりそんなこと言っても何のことだか分からんと思うぞ。 そもそもCoreのこと聞いてないし。
886 名前:デフォルトの名無しさん (ワッチョイ 413c-bVUl) mailto:sage [2016/12/20(火) 00:19:37.86 ID:woy83GfY0.net] >>872 自分で調べるだろ わからなけりゃまた聞いてくるだろうし 今から始めるやつはそもそもWeb formsなんか対象にならないだろうから、Coreと比べるのは妥当
887 名前:デフォルトの名無しさん (ワッチョイ 3a13-WTZK) mailto:sage [2016/12/20(火) 01:09:58.52 ID:bQKX6Z8E0.net] 屁理屈言うなよ
888 名前:デフォルトの名無しさん (スプッッ Sdc8-bVUl) mailto:sage [2016/12/20(火) 02:18:50.01 ID:usQ/Ng63d.net] >>874 至極まともな考えだと思うが
889 名前:デフォルトの名無しさん (ワッチョイ 35dc-6+SE) mailto:sage [2016/12/20(火) 07:30:35.17 ID:wmh5vlKz0.net] 今はASP.NET自体も無印とCoreに分裂してるから紛らわしい このジャップ国でASP.NETに入門しようとしたら平気でWebFormsの情報ばかり出てくるから とりあえずはそこさえ間違えなきゃいいと思うけどね いきなりCoreは日本語の情報少なくて厳しいと思う
890 名前:デフォルトの名無しさん (ワッチョイ 2d5b-yrUh) [2016/12/20(火) 07:55:39.72 ID:1rO91uPl0.net] >>864 です みなさんありがとうございます 大変参考になりました。聞いてよかったです 色々出して頂いたものは今から調べてみたいと思います
891 名前:デフォルトの名無しさん (ブーイモ MM8d-3Pgg) mailto:sage [2016/12/20(火) 19:05:30.30 ID:ZJa7dsMxM.net] web formsはあれはあれでよく出来てるよ 経験の浅い若手を使って業務用システムをサッと作りたいときとかね もちろん保守は他社がやると見込める時だけだが
892 名前:デフォルトの名無しさん (ワッチョイ 6751-g1cW) mailto:sage [2016/12/22(木) 23:43:30.19 ID:GClofaGB0.net] C#を三か月前から勉強し始めました。 家でも勉強したくてパソコンにVS入れたいのですが、2015をインストールしたら, Blend2015というのがインストールされました。 無料版ではComminityとExpressがあって、Comminityのほうがおすすめと聞いたのでそっちを入れたかったのですが・・・ Blendとはいったいどういう位置づけになるのですか? 会社ではVisualStudio2013Professionalを使っています。
893 名前:デフォルトの名無しさん (ワッチョイ b749-AD9A) mailto:sage [2016/12/22(木) 23:52:13.67 ID:x9LZEgeN0.net] >>879 VisualStudioに付いてくるおまけ。 WPFでGUIをデザインするためのツール。 Comminityを入れたんなら、Blendとは別にComminityの方も入ってるだろ。
894 名前:デフォルトの名無しさん (ワッチョイ b749-AD9A) mailto:sage [2016/12/22(木) 23:53:53.81 ID:x9LZEgeN0.net] あれ、community、だな。
895 名前:デフォルトの名無しさん (ワッチョイ 6751-g1cW) mailto:sage [2016/12/23(金) 00:07:02.38 ID:eKejh9BS0.net] >>880 communityをインストールしようとしたらなぜかBlendになってました・・・。 2015もcommunityありますよね? ありがとうございます。インストr−ルやりなおしてみます
896 名前:デフォルトの名無しさん (スフッ Sddf-Khx9) mailto:sage [2016/12/23(金) 00:13:03.88 ID:nw5SwlgYd.net] Visual Studio入れるとBlendが付いてくる アプリケーションの一覧にVisual Studioのフォルダが出来てないか?
897 名前:デフォルトの名無しさん (ワッチョイ 0379-d0Xh) mailto:sage [2016/12/23(金) 00:15:51.67 ID:P0PUtLY+0.net] Blend版が付いてくるのを知らなくて、普通のVS起動していたつもりがBlend起動してて、設定項目が見つからず6時間くらい無駄にした思い出
898 名前:デフォルトの名無しさん (ワッチョイ b749-AD9A) mailto:sage [2016/12/23(金) 00:19:34.19 ID:et7LM/Li0.net] >>882 Blendだけ入るって無いと思うけど。両方入っているはず。 落ち着いてメニューをよく見たら。
899 名前:デフォルトの名無しさん (ワッチョイ 73dc-PUH/) mailto:sage [2016/12/23(金) 00:19:39.42 ID:Boa5/2YS0.net] 仕事で使うための勉強ならBlendなんか用無しだろ ASP.NETとWinFormsだけやっとけばいい
900 名前:デフォルトの名無しさん (ワッチョイ e75e-g1cW) mailto:sage [2016/12/23(金) 00:24:53.07 ID:ydrXOK0X0.net] C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv.exe >>882 必ず入っているはず。 むしろBlend版とか知らなくて、そのレス見てからサインインしたw
901 名前:デフォルトの名無しさん (アウアウカー Sa3f-fflT) [2016/12/23(金) 15:03:31.78 ID:8qbb8kwia.net] Coreの話
902 名前:が出てたけど、ラズパイにwebアプリをデプロイできるの? [] [ここ壊れてます]
903 名前:デフォルトの名無しさん (ワッチョイ 273c-GTRU) mailto:sage [2016/12/23(金) 15:17:21.07 ID:ThcKA0lt0.net] >>888 ロードマップでは、ARM対応はQ4 2016 / Q1 2017ってなってた。Samsungが確か頑張ってるはず。
904 名前:デフォルトの名無しさん (アウアウカー Sa3f-fflT) [2016/12/23(金) 17:23:34.06 ID:9xVG4ZuTa.net] >>889 そうなのね!ありがとう
905 名前:デフォルトの名無しさん (ワッチョイ 6751-g1cW) mailto:sage [2016/12/23(金) 18:46:44.52 ID:eKejh9BS0.net] >>883 ,884,885,886,887 返信ありがとうございます インストール一覧を調べてみたところcommunityも入っていました もっと確認すべきでした・・・ どうもありごうございました。
906 名前:デフォルトの名無しさん (ワッチョイ d7ce-agOw) mailto:sage [2016/12/23(金) 21:53:23.45 ID:Lyl7nXDN0.net] 余計な物も入れてくるから嫌いなんだよなあインストーラー IDE必要ないからexeビルド環境だけ入るようなオプションない?
907 名前:デフォルトの名無しさん (ワッチョイ efa1-YuIQ) mailto:sage [2016/12/23(金) 22:11:13.66 ID:wnG5DWev0.net] csc.exeなら.NET Frameworkに含まれてんじゃないっけ
908 名前:デフォルトの名無しさん (ワッチョイ 4779-d0Xh) mailto:sage [2016/12/23(金) 22:39:52.11 ID:6njdFiip0.net] csc.exeはデフォで付いてくる IDE入れないとコンパイラ入れられない言語とかない
909 名前:デフォルトの名無しさん (ワッチョイ 0f7b-SerI) mailto:sage [2016/12/23(金) 22:43:28.69 ID:jiSEHcxr0.net] YouTube にある、T Umezawa の「メモ帳でC#超入門 #16」 ニコ生で放送しているのか? よく知らないけど、昨日、#16 がアップされた
910 名前:デフォルトの名無しさん (ワッチョイ e30d-agOw) mailto:sage [2016/12/23(金) 22:46:42.71 ID:8ECS/mff0.net] 自作自演の宣伝きめぇ
911 名前:デフォルトの名無しさん (ワッチョイ 4779-d0Xh) mailto:sage [2016/12/23(金) 22:55:02.72 ID:6njdFiip0.net] メモ帳とかメリットなさすぎ VSが重くて嫌ならVSCodeおすすめ
912 名前:デフォルトの名無しさん (ブーイモ MM8f-ncxm) mailto:sage [2016/12/23(金) 23:04:29.79 ID:gDLxrLVpM.net] VSは機能の割には無茶苦茶軽いと思うけどな しかもゴッテゴテのWPFアプリなのに
913 名前:デフォルトの名無しさん (ブーイモ MM3f-lsSM) mailto:sage [2016/12/23(金) 23:05:50.84 ID:MNqe+TxRM.net] WPFが重いって無能が作り上げた先入観でしかないんだよね
914 名前:デフォルトの名無しさん (ワッチョイ f3d6-i5Qz) mailto:sage [2016/12/23(金) 23:09:15.19 ID:ejzKG2eK0.net] 超低スペックなパソコンを後生大事に使い続ける貧乏人が文句言ってるだけ
915 名前:デフォルトの名無しさん (ワッチョイ abc0-g1cW) mailto:sage [2016/12/23(金) 23:28:01.18 ID:c2xEt3tE0.net] 低スペPC使っているけど、VSは2010以前とそれ以降で重さが段違いだな
916 名前:デフォルトの名無しさん (ワッチョイ 4779-d0Xh) mailto:sage [2016/12/23(金) 23:35:32.33 ID:6njdFiip0.net] >>898 Eclipseに比べたらかなり軽いよね JavaとかScalaもVSに対応してほしい
917 名前:デフォルトの名無しさん (ワッチョイ ab3c-g1cW) mailto:sage [2016/12/23(金) 23:36:01.09 ID:Fo6fBKop0.net] 2017は必要なものだけで立ち上げられるんだろ?
918 名前:デフォルトの名無しさん (ブーイモ MM3f-lsSM) mailto:sage [2016/12/23(金) 23:38:37.93 ID:MNqe+TxRM.net] 次はインストールも爆速になるらしいな 最近のMicrosoftさん頑張りすぎ ORACLEも少しはMicrosoftを見習ってほしい
919 名前:デフォルトの名無しさん (ワッチョイ 4779-d0Xh) mailto:sage [2016/12/23(金) 23:42:33.40 ID:6njdFiip0.net] インストールは寝る前にするからあまり関係ないけどね
920 名前:デフォルトの名無しさん (ブーイモ MM8f-ncxm) mailto:sage [2016/12/23(金) 23:43:37.75 ID:gDLxrLVpM.net] >>899 VSの成功が証明してるようにスケーラビリティが高いのは確かだけど、 実際小さなアプリに使うには重いよ
921 名前:デフォルトの名無しさん (ワッチョイ 4779-d0Xh) mailto:sage [2016/12/23(金) 23:45:24.81 ID:6njdFiip0.net] WPFはバインドがなー Angularとかの自動更新になれるとね
922 名前:デフォルトの名無しさん (ワッチョイ 273c-GTRU) mailto:sage [2016/12/24(土) 00:09:01.03 ID:LpJ8AJuF0.net] >>892 Cake使えば?
923 名前:デフォルトの名無しさん (ワッチョイ ef9f-h9rX) mailto:sage [2016/12/24(土) 01:10:24.95 ID:YCrD1JsG0.net] >>894 なんで自信ありそうに言いきってるの? IDE入れないといけない言語はあるよ
924 名前:デフォルトの名無しさん (ワッチョイ 3f3c-PK0Z) mailto:sage [2016/12/24(土) 09:08:23.75 ID:dPbQS77J0.net] >>909 具体的に何よ?
925 名前:デフォルトの名無しさん (ワッチョイ 73dc-ncxm) mailto:sage [2016/12/24(土) 09:26:43.36 ID:3LTJc3r/0.net] Smalltalkとか昔のVBやDelphiとか
926 名前:デフォルトの名無しさん (ワッチョイ 8f42-3ZJ0) mailto:sage [2016/12/24(土) 10:07:04.78 ID:Uz+bz49d0.net] コンパイラ?
927 名前:デフォルトの名無しさん (アウアウカー Sa3f-a5Nx) mailto:sage [2016/12/24(土) 10:09:16.39 ID:VcKJc7+aa.net] powerbuilderもだった
928 名前:デフォルトの名無しさん (ワッチョイ 2f23-g1cW) mailto:sage [2016/12/24(土) 11:28:12.62 ID:prTI7XBj0.net] >>912 昔のVBもDelphiもコンパイラなんだけどw
929 名前:デフォルトの名無しさん (オッペケ Srcf-qdr/) mailto:sage [2016/12/24(土) 13:38:48.90 ID:HbE0faQGr.net] ウインフォームアプリ作ったんだけどインストーラーとかアップデータとかも自分で作るの?
930 名前:デフォルトの名無しさん (ワッチョイ 273c-GTRU) mailto:sage [2016/12/24(土) 13:40:12.31 ID:LpJ8AJuF0.net] >>915 ClickOnce
931 名前:デフォルトの名無しさん (ワッチョイ ef9f-h9rX) mailto:sage [2016/12/24(土) 13:41:59.25 ID:yr6q9nVG0.net] VBAとかSmall BasicとかScratchとかもそうじゃね
932 名前:デフォルトの名無しさん (オッペケ Srcf-qdr/) mailto:sage [2016/12/24(土) 13:56:05.59 ID:HbE0faQGr.net] >>916 それってオワコンなんじゃないの?
933 名前:デフォルトの名無しさん (ブーイモ MM5f-ncxm) mailto:sage [2016/12/24(土) 14:01:46.96 ID:1tLIoM8kM.net] >>918 それを言ったらWinFormsもオワコンだよ 今生きてるのはASP.NETとUWPだけ
934 名前:デフォルトの名無しさん (ワッチョイ abc0-g1cW) mailto:sage [2016/12/24(土) 14:03:16.98 ID:a9e/NRk30.net] オワコンだけど代替がないってのがね
935 名前:デフォルトの名無しさん (ワッチョイ 379d-i5Qz) mailto:sage [2016/12/24(土) 14:23:05.13 ID:2536g+Dg0.net] MSもWinFormsに回帰、注力すべき
936 名前:デフォルトの名無しさん (ワッチョイ 2f23-g1cW) mailto:sage [2016/12/24(土) 14:35:55.93 ID:prTI7XBj0.net] 拡張機能からNuGetでVisualStudioInstaller入れられるの知らないのカー
937 名前:デフォルトの名無しさん (ワッチョイ e33c-IeCC) [2016/12/24(土) 15:17:55.11 ID:hhClfuXq0.net] 並列処理を行いたいんですがどうすればいいでしょうか? しかも複数の並列処理で同一のコントロール(TextBox1.text) に同時に書き込めるようにしたいです(書き込む順番はきにしません) あとそれぞれの並列処理を無限ループで繰り返し処理を行いたいと 思っております。 どなたか教えてください。どうぞよろしくお願いします
938 名前:デフォルトの名無しさん (オッペケ Sref-AvAH) mailto:sage [2016/12/24(土) 15:19:37.36 ID:JBAVj1Vvr.net] >>899 無能と言うか変化について行けない頭固い人だね。 所謂老害かな。
939 名前:デフォルトの名無しさん (ワッチョイ 273c-GTRU) mailto:sage [2016/12/24(土) 15:20:33.37 ID:LpJ8AJuF0.net] >>918 その要件を簡単に実現できる方法が他にない。
940 名前:デフォルトの名無しさん (オッペケ Sref-AvAH) mailto:sage [2016/12/24(土) 15:21:12.81 ID:JBAVj1Vvr.net] >>923 async, await 一択。
941 名前:デフォルトの名無しさん (ワッチョイ 8f13-i5Qz) mailto:sage [2016/12/24(土) 15:21:23.94 ID:XrRMaYjq0.net] >>909 たとえば?
942 名前:デフォルトの名無しさん (ワッチョイ d7ce-agOw) mailto:sage [2016/12/24(土) 16:08:14.24 ID:yMvVW4sX0.net] >>923 System.Windows.Forms.Control.Invoke経由で書き込むだけ
943 名前:デフォルトの名無しさん (ブーイモ MM5f-ncxm) mailto:sage [2016/12/24(土) 16:10:19.44 ID:RJkhT4CTM.net] >>923 ワーカースレッドから好き勝手にGUI触るとカオスになるから、Producer-Consumerで分離すれば? 複雑なことをやるならGUIからではなくデザイン(見た目じゃないよ)から入る作り方も覚えていったほうがいい
944 名前:デフォルトの名無しさん (ワッチョイ 8f13-0LB+) mailto:sage [2016/12/24(土) 16:17:45.91 ID:cCwHGfM40.net] >>928 これだな
945 名前:デフォルトの名無しさん (ワッチョイ 73dc-ncxm) mailto:sage [2016/12/24(土) 16:27:12.97 ID:3LTJc3r/0.net] >>924 悪いけど、今時WPF推しとかそれこそ老害だと思うぞ 立ち止まって周りを見てみろ
946 名前:デフォルトの名無しさん (ワッチョイ b77b-g1cW) mailto:sage [2016/12/24(土) 16:28:09.91 ID:YD9ZIllA0.net] 話の流れが読めない人?
947 名前:923 (ワッチョイ e33c-IeCC) [2016/12/24(土) 17:08:45.84 ID:hhClfuXq0.net] みなさんありがとうございます。 自分なりに調べて以下の通りつくってみました 「3秒まってコンソールに文字列を出力する」という処理を並列で動作させたかったのですが どうもそれぞれの処理が単体で実行されるだけで並列処理になっていないようです。 以下の処理を並列で実行できるようにするにはどうすればよろしいでしょうか? private async void button1_Click(object sender, EventArgs e) { while (true) { await Task.Run(() => Thread.Sleep(3000)); Console.WriteLine("タスク完了"); } }
948 名前:デフォルトの名無しさん (オッペケ Srcf-qdr/) mailto:sage [2016/12/24(土) 17:10:58.57 ID:HbE0faQGr.net] >>919 >>925 >>920 そっかあ 面倒だけど自作するか… もうおっさんだからWinForm以外習得できん
949 名前:デフォルトの名無しさん (オッペケ Srcf-qdr/) mailto:sage [2016/12/24(土) 17:12:35.93 ID:HbE0faQGr.net] >>922 あれ…記憶にないけどインストールしてあったw まあアップデータは自作になるか…
950 名前:デフォルトの名無しさん (ブーイモ MM3f-TACi) mailto:sage [2016/12/24(土) 17:21:30.45 ID:Jrqe8RRjM.net] >>933 その例は 「3秒まってコンソールに文字列を出力する」 ってタスクを無限個作りたいのん? 最初は2個にしておけば?
951 名前:923 (ワッチョイ e33c-IeCC) [2016/12/24(土) 17:33:48.36 ID:hhClfuXq0.net] >>936 はいそうです 2個でも問題ありません。 簡単なサンプルとか頂ければ大変助かります 大変恐縮ですがどうぞよろしくお願い致します
952 名前:デフォルトの名無しさん (オッペケ Sref-AvAH) mailto:sage [2016/12/24(土) 17:39:03.48 ID:JBAVj1Vvr.net] >>933 > 以下の処理 これが意味不明だけど。 十分並列にはなってる。
953 名前:923 (ワッチョイ e33c-IeCC) [2016/12/24(土) 17:52:32.66 ID:hhClfuXq0.net] >>938 そうなんですね。ご指摘ありがとうございます。 ただ私の想定としては、「3秒待って出力」という処理を 複数同時に開始したいと思っておりました ですがコンソールに出力されるタイミングは3秒おきに1処理分しか 出力されず、非同期処理と変わらない処理となっているような気がします 上で示したサンプルがわかりづらくて申し訳ありませんが タスクは2個でも3個でも同時並列で処理できれば問題ありません 大変恐縮ですがご教示頂ければと思います
954 名前:デフォルトの名無しさん (ワッチョイ 3b3a-a3YU) mailto:sage [2016/12/24(土) 18:00:04.01 ID:kAw8XX2k0.net] >>937 void TaskTest() { Task.Run(async () => { await Task.Delay(3000); Console.WriteLine(DateTime.Now); }); Task.Run(async () => { await Task.Delay(3000); Console.WriteLine(DateTime.Now); }); }
955 名前:923 (ワッチョイ e33c-IeCC) [2016/12/24(土) 18:29:36.15 ID:hhClfuXq0.net] >>940 ありがとうございます! ちなみにテキストボックスなどに内容を出力することって出来ますでしょうか? これらの処理をりようして TextBox1.Textに内容を出力する処理をそれぞれのタスクに追加すると エラーになってしまうようです。 お手数おかけしますがよろしくおねがいします。
956 名前:デフォルトの名無しさん (ワッチョイ 8f13-0LB+) mailto:sage [2016/12/24(土) 18:40:47.89 ID:cCwHGfM40.net] >>941 >>928
957 名前:923 (ワッチョイ e33c-IeCC) [2016/12/24(土) 18:41:21.02 ID:hhClfuXq0.net] これだとやっぱり3秒毎に1処理実行されるだけなんですね・・・ async Task<string> TaskTest() { await Task.Delay(3000); return "a"; } private async void button1_Click(object sender, EventArgs e) { while (true) { TextBox1.Text += await TaskTest(); Application.DoEvents(); } }
958 名前:923 (ワッチョイ e33c-IeCC) [2016/12/24(土) 18:51:54.77 ID:hhClfuXq0.net] >>942 ありがとうございます。 ただやっぱり並列にはなりませんでした・・・ なにがまちがってるんでしょうか・・・? while (true) { await Task.Factory.StartNew(() => { Invoke((MethodInvoker)(() => { Thread.Sleep(3000); TextBox1.Text += "a"; })); }); }
959 名前:デフォルトの名無しさん (ワッチョイ 7f94-4hBO) mailto:sage [2016/12/24(土) 19:04:14.66 ID:iV5eYun00.net] while(true)で無限にTaskを作るとOutOfMemoryExceptionになるから Parallel使って10個ずつくらいに制限して、 TextBoxへの書き込みにはProgressを使うとこんな感じ private void button1_Click_1(object sender, EventArgs e) { IProgress<string> progress = new Progress<string>(text => { TextBox1.Text += text; }); Task.Run(() => { while (true) { Parallel.For(0, 10, i => { System.Threading.Thread.Sleep(3000); progress.Report("a"); }); } }); }
960 名前:923 (ワッチョイ e33c-IeCC) [2016/12/24(土) 19:13:46.70 ID:hhClfuXq0.net] ありがとうございました!大変助かりました! お手数おかけして申し訳ありませんでした
961 名前:923 (ワッチョイ e33c-IeCC) [2016/12/24(土) 20:17:57.50 ID:hhClfuXq0.net] >>945 おかげさまで仕事がはかどりました 改めてありがとうございました。 ただ、ソースをよく読んでみると Parallel.Forというのがあるので Task使わなくても問題なさそうですね (C#歴は1ヶ月程度なので違ってるかもしれませんが)
962 名前:デフォルトの名無しさん (ブーイモ MM3f-TACi) mailto:sage [2016/12/24(土) 20:23:51.87 ID:Jrqe8RRjM.net] >>945 Progressなんてクラスが居たのね。こいつは捗りそう。
963 名前:デフォルトの名無しさん (ワッチョイ 7f94-4hBO) mailto:sage [2016/12/24(土) 20:25:53.45 ID:iV5eYun00.net] >>947 Parallelは完了まで自スレッドをロックしてしまう (つまり、並列ではあるけど非同期ではない)ので UIスレッドをフリーズさせないためにはTaskとの併用が必要
964 名前:923 (ワッチョイ e33c-IeCC) [2016/12/24(土) 20:51:06.97 ID:hhClfuXq0.net] なるほど。ありがとうございました!
965 名前:デフォルトの名無しさん (アウアウカー Sa3f-qibb) [2016/12/24(土) 21:56:05.36 ID:AwL0H4eka.net] おまえら割とマジですげぇわ
966 名前:デフォルトの名無しさん (ワッチョイ ab3c-g1cW) mailto:sage [2016/12/24(土) 22:01:11.57 ID:LTc/wMbf0.net] 俺は初心者だからかもしれんが ここに世界中の天才が集まってるのかとと思うわ
967 名前:デフォルトの名無しさん (ワッチョイ bfcb-oYiN) mailto:sage [2016/12/25(日) 19:11:38.15 ID:liHUAEex0.net] かわいい奴
968 名前:デフォルトの名無しさん (ワッチョイ e33c-IeCC) [2016/12/26(月) 00:25:16.13 ID:0WzKTwBd0.net] 時刻だけ比較したいんですがそんなことってできます? 例えば現在時刻が13:30以降の時のみtrueを返すような時ってどうすればいいですか?
969 名前:デフォルトの名無しさん (ワッチョイ 8f13-7bim) mailto:sage [2016/12/26(月) 00:35:44.64 ID:TE+B1lbE0.net] >>954 これでどう? var now = DateTime.Now; var time = new DateTime(now.Year, now.Month, now.Day, 13, 30, 0); return time <= now;
970 名前:デフォルトの名無しさん (ワッチョイ 7f94-4hBO) mailto:sage [2016/12/26(月) 00:46:35.20 ID:+7V9eNZX0.net] こんなのも TimeSpan referenceTime = new TimeSpan(13, 30, 0); return DateTime.Now.TimeOfDay >= referenceTime;
971 名前:デフォルトの名無しさん (ワッチョイ 3bc9-DLF2) mailto:sage [2016/12/26(月) 00:54:59.31 ID:AQNPYjTP0.net] 単に ((DateTime.Now.Hour == 13 && DateTime.Now.Minute >= 30) || DateTime.Now.Hour > 13) じゃいかんのか
972 名前:デフォルトの名無しさん (ワッチョイ e33c-IeCC) [2016/12/26(月) 01:08:14.89 ID:0WzKTwBd0.net] ありがとうございました!
973 名前:デフォルトの名無しさん (ワッチョイ 379d-i5Qz) mailto:sage [2016/12/26(月) 02:19:47.23 ID:CIVIxVtu0.net] 今回のケースに限ったことじゃないんだけど、 1回のif文でNowを複数回参照して、Nowが全部同じ値だという保証はあるのかな?
974 名前:デフォルトの名無しさん (ワッチョイ 8f13-0LB+) mailto:sage [2016/12/26(月) 02:47:24.74 ID:TE+B1lbE0.net] >>959 ないよ
975 名前:デフォルトの名無しさん (ブーイモ MM5f-TACi) mailto:sage [2016/12/26(月) 12:35:23.91 ID:cti1899cM.net] 13:59:59から14:00:00の変わり目だけに起こるバグとか、怖いっす
976 名前:デフォルトの名無しさん (ワッチョイ 2f23-g1cW) mailto:sage [2016/12/26(月) 13:03:53.01 ID:Bu04EBir0.net] どうしても気になるなら、先に分を比較すればバグることはない
977 名前:デフォルトの名無しさん (ワッチョイ 8f42-lvdU) mailto:sage [2016/12/26(月) 14:07:19.56 ID:UJaB3lV20.net] そんな対処せずに1回の比較で終わるようにしときゃいいやん
978 名前:デフォルトの名無しさん (スフッ Sddf-0LB+) mailto:sage [2016/12/26(月) 14:13:47.94 ID:qgo+g5wcd.net] だから>>955 みたいに先にNowを保存すればいいだろ ウダウダ悩んでるおまえ等が信じられんわw
979 名前:デフォルトの名無しさん (アウアウオー Saff-iGc/) mailto:sage [2016/12/26(月) 14:18:36.34 ID:1bhMGPyja.net] どうでもいいけど、そもそも「現在時刻が13:30以降の時のみtrue」って要件はかなりあいまいだね。
980 名前:デフォルトの名無しさん (JP 0Hef-g1cW) mailto:sage [2016/12/26(月) 14:24:40.84 ID:E1wmt4rJH.net] 23:59:59までtrueでいいんかとか PCの内蔵タイマーの時刻でいいんかとか タイムゾーンはどうなんかとか
981 名前:デフォルトの名無しさん (ワッチョイ 837b-DNID) mailto:sage [2016/12/26(月) 14:38:43.61 ID:G2ewta8d0.net] 先生スレッドのカルチャー変えても比較出来るんですか
982 名前:デフォルトの名無しさん (ワッチョイ 63a4-zpPG) [2016/12/26(月) 17:15:25.72 ID:faSaUmiF0.net] TextBox1とTexBox2(非表示)があります。 TextBox1にフォーカスが移動したら、TextBox2を表示してそちらにフォーカスを移動します。 TextBox2から別のところにフォーカスが移動したらTextBox2を非表示にしたいです。 TextBox1のEnter時に TextBox2.Visible = true; TextBox2.Select(); と書き、TextBox2のLeave時に TextBox2.Visible = false; と書きました。実行してみるとTextBox2が点滅して消えてしまいます。 調べてみるとLeave時の処理が3回実行されているようで、さらに https://msdn.microsoft.com/ja-jp/library/system.windows.forms.control.gotfocus(v=vs.110).aspx Doing so can cause your application or the operating system to stop responding. フォーカスの設定をするなと書いてあるようです。 最悪、透明なボタンでも設置して無理矢理実現するしかないのかなと考えていますが、 フォーカス取得時に別のテキストボックスに移動することはできませんか?
983 名前:デフォルトの名無しさん (ワッチョイ e30d-agOw) mailto:sage [2016/12/26(月) 17:20:02.90 ID:uTypYcaG0.net] WPFは駄目って言ってる奴いるけど、じゃあ何で作るんだ? まさか制限盛りだくさんのUWPとか言わないよな?
984 名前:デフォルトの名無しさん (アウアウオー Saff-iGc/) mailto:sage [2016/12/26(月) 17:31:38.03 ID:1bhMGPyja.net] >>968 なぜそんなアホなことをしたいの? たぶん実現したい何らかの使用に対して君が思いついた方法がそれなんだどうけど どう考えてもその方法は間違ってるから最終的にどういう仕様を実現したいかを 書いた方がいいと思うよ
985 名前:デフォルトの名無しさん (ワッチョイ 0fba-i5Qz) mailto:sage [2016/12/26(月) 17:31:53.92 ID:ejLfwHLb0.net] そういう連中、WPFを知ってて言ってるわけじゃないもんな。 追及してやると主張が C#駄目 Windows駄目 デスクトップアプリ駄目 のどれかに変わる。
986 名前:デフォルトの名無しさん (ワッチョイ abc0-g1cW) mailto:sage [2016/12/26(月) 17:36:34.58 ID:BQIvjtl90.net] >>971 今その条件で作れと言われたら迷わずWPF選びたいけど、俺社環だとForm選ばざるを得ないのが辛い
987 名前:デフォルトの名無しさん (ワッチョイ c33c-v5hB) mailto:sage [2016/12/26(月) 17:44:50.42 ID:bXBxzWjM0.net] >俺社環だと あるある
988 名前:デフォルトの名無しさん (ワッチョイ 63a4-zpPG) [2016/12/26(月) 17:46:33.22 ID:faSaUmiF0.net] >>970 郵便番号を入力する部分のテキストボックスを7つに分けたのですが、 入力時には1つにしたほうが入力しやすいだろうと思いました。 LabelにするとTabでフォーカスを受け取れないので連続で入力しにくいかなと思ったり、 そもそも郵便番号をわざわざ分けているのは、入力フォームを画像にして裏に貼り、 入力イメージが掴めるようにしようかなと思った次第ですが、別のテキストボックスに 入力させてそれをプレビューしちゃだめというわけでもないので出来ないのであれば 入力とプレビューをわけようと思いますが、テキストボックスがフォーカスを受け取ったら バトンパスのように他のテキストボックスに移動するというのは出来ないのかなと思って質問しました。
989 名前:デフォルトの名無しさん (ワッチョイ c33c-v5hB) mailto:sage [2016/12/26(月) 17:56:43.50 ID:bXBxzWjM0.net] >郵便番号を入力する部分のテキストボックスを7つに分けたのですが この時点でおかしいだろ(困惑)
990 名前:デフォルトの名無しさん (ワッチョイ 7f94-4hBO) mailto:sage [2016/12/26(月) 18:15:12.11 ID:qJ+YWzR60.net] 入力しようとしてテキストボックスを選んだら勝手に次のテキストボックスに飛ぶって 嫌がらせにしかならない気が…(どうやって入力してもらうの…) 郵便番号の枠のイメージで1文字ずつの入力にしたいというのなら 1文字しか入力できないテキストボックスを7つ配置して、 入力されたら次に飛ぶ、文字が消されたら前に飛ぶ、みたいに作るのがいいのでは
991 名前:デフォルトの名無しさん (アウアウオー Saff-iGc/) mailto:sage [2016/12/26(月) 18:28:31.17 ID:1bhMGPyja.net] >>974 ハガキや封書の〒記入欄の見た目に似せたいってことかもしれんけど、 そんなくだらない仕様を諦めるわけにいかないの? ありがた迷惑なだけでメリットないと思うけど 郵便番号を入力するUIなんて割と多いけどそんなヘンテコな仕様見たことないよw
992 名前:デフォルトの名無しさん (ワッチョイ d7ce-agOw) mailto:sage [2016/12/26(月) 19:05:18.45 ID:/iMD3zus0.net] 話を一般化すると、プロダクトID入力画面みたいに 指定桁だけ入力し終わったら次のテキストボックスに移動したいのかな TextChangedとSelectNextControlかな
993 名前:デフォルトの名無しさん (ワッチョイ 2f23-g1cW) mailto:sage [2016/12/26(月) 19:38:22.72 ID:Bu04EBir0.net] >>969 Cのライブラリ使ったりDataGridが何とかなりそうなら、UWPも悪くない選択肢だよ コントロールも標準で沢山ついてくるしtoolkitも充実している
994 名前:デフォルトの名無しさん (ワッチョイ 2f23-g1cW) mailto:sage [2016/12/26(月) 19:43:38.71 ID:Bu04EBir0.net] 郵便番号程度なら、パネルから派生させたフルスクラッチでコントロール作っても大したことない気がするな これからも使いそうなら作っちまえよ
995 名前:デフォルトの名無しさん (ワッチョイ 5394-4hBO) mailto:sage [2016/12/26(月) 19:52:33.70 ID:5v43Qgq70.net] >TextBox1にフォーカスが移動したら、TextBox2を表示してそちらにフォーカスを移動します。 >TextBox2から別のところにフォーカスが移動したらTextBox2を非表示にしたいです。 というのは、入力しようとすると別途用意された入力フォームが開く、みたいなUIを模したいのかなぁ とりあえず >>968 はこれで実現できる private void TextBox1_Enter(object sender, EventArgs e) { new Task(() => { TextBox2.Visible = true; TextBox2.Select(); }) .Start(TaskScheduler.FromCurrentSynchronizationContext()); } フォーカスイベントの連鎖から独立した別スレッドからUIスレッドに指示を出すので >set focus from within the Enter, GotFocus, Leave, LostFocus, Validating, or Validated event handlers には当たらないと思う
996 名前:デフォルトの名無しさん (JP 0Hcf-Qa15) mailto:sage [2016/12/26(月) 20:00:08.21 ID:K98gijPEH.net] 役所が1セルに1文字しか入力しちゃいけないExcelフォーマット量産してるって 話を思い出した
997 名前:デフォルトの名無しさん (ワッチョイ 0fba-i5Qz) mailto:sage [2016/12/26(月) 20:14:39.87 ID:ejLfwHLb0.net] UWPは配布が一番のネックだな。 プログラミング需要のある程度の割合を企業内ユースが占めていると思うけど、 そういう用途じゃわざわざUWPなんて使わんよな。せいぜいWinRT。 さらに、今の時点だとまだWindows7を無視できないから結局FormsかWPFってところじゃない?
998 名前:デフォルトの名無しさん (ワッチョイ 9faf-pRKv) mailto:sage [2016/12/26(月) 21:10:56.35 ID:yrQs6qFs0.net] ストア配布なら企業内以上に一般も難しそう 欲しいソフトがあるときはWindowsはストアで探すよりも検索してベクターなり窓の社なりから探してくる人が多いし
999 名前:デフォルトの名無しさん (ワッチョイ c33c-v5hB) mailto:sage [2016/12/26(月) 21:25:19.92 ID:bXBxzWjM0.net] Winはそうよね 海外はどうか知らんが
1000 名前:デフォルトの名無しさん (ワッチョイ e30d-agOw) mailto:sage [2016/12/26(月) 22:27:21.69 ID:uTypYcaG0.net] じゃあ、>>756 や>>931 は間違ってるということでいいんですね
1001 名前:デフォルトの名無しさん (アウアウオー Saff-iGc/) mailto:sage [2016/12/26(月) 23:49:51.33 ID:nUdM+QKma.net] その手の問題は最終的には自分で答えを出すしかないでしょ。 個人的には2chくんだりで「いつも誰かと戦ってる」タイプの人のいうことは真に受けない方がいいと思うけどねw それは彼がそんなくだらないことをするのか、その動機を考えれば自明だよね 俺個人としてはこの記事(すでに古い記事だけど)のタイトルがすべてだと思う https://www.infoq.com/jp/articles/Win8-LOB-Options Windows Formが終わってるのと同程度にはWPFも終わってる かといってプランCも存在しない
1002 名前:968 (ワッチョイ 736e-gQz9) [2016/12/26(月) 23:57:39.10 ID:Z8alzA0s0.net] そこまでひどいUIとは思いませんでした。 おとなしく入力とプレビューを分けるようにします。 >>981 は明日にでも試してみようと思います。
1003 名前:デフォルトの名無しさん (ワッチョイ 8f7b-YyGO) mailto:sage [2016/12/27(火) 01:33:51.84 ID:SOm/Nt9E0.net] うめ
1004 名前:デフォルトの名無しさん (ワッチョイ 5394-4hBO) mailto:sage [2016/12/27(火) 02:10:31.58 ID:HrGPkQcW0.net] 次スレ ふらっと C#,C♯,C#(初心者用) Part126 echo.2ch.net/test/read.cgi/tech/1482772061/
1005 名前:デフォルトの名無しさん (ワッチョイ dfcb-vcjl) mailto:sage [2016/12/27(火) 02:44:38.87 ID:Ue0MWe8H0.net] twitterのタイムラインのようなものを作ろうと思っているのですがどのようなコントロールを使えばいいのかがわかりません どなたか私に教えていただけないでしょうか? よろしくお願いします
1006 名前:デフォルトの名無しさん (ワッチョイ 73dc-PUH/) mailto:sage [2016/12/27(火) 07:15:38.67 ID:CsLSwhzy0.net] WebBrowser
1007 名前:デフォルトの名無しさん (ワッチョイ 4791-t+3N) mailto:sage [2016/12/27(火) 14:02:51.16 ID:DjR8onEe0.net] datagridviewでセルに何か書き込まれたときにそこが真ん中になるよう自動でスクロールしたいのですが どうすればいいですか?
1008 名前:デフォルトの名無しさん (ワッチョイ dfcb-vcjl) mailto:sage [2016/12/27(火) 14:19:39.59 ID:Ue0MWe8H0.net] >>992 ご回答ありがとうございます 私の言葉が足らなかったようですみません twitterのタイムラインをwebbrowserで表示するのではなくtwitterのAPIを使いツイートの情報を受け取りそれらをtwitterのタイムライン風に表示したいと考えております
1009 名前:デフォルトの名無しさん (ワッチョイ 2b94-4hBO) mailto:sage [2016/12/27(火) 14:40:14.00 ID:+TUrL10Q0.net] >>993 CurrentCellDirtyStateChangedかCellValueChangedイベントハンドラで int offset = dataGridView.Rows.GetRowCount(DataGridViewElementStates.Displayed) / 2; int current = dataGridView.CurrentCell.RowIndex; dataGridView.FirstDisplayedScrollingRowIndex = Math.Max(0, current - offset); スクロール量はoffsetの値に+-して調整
1010 名前:デフォルトの名無しさん (ワッチョイ 4791-t+3N) mailto:sage [2016/12/27(火) 16:50:37.42 ID:DjR8onEe0.net] >>995 なるほどオフセットと現在の位置で動かすのですか 思い通りにできましたありがとうございます
1011 名前:デフォルトの名無しさん (ワッチョイ bf4c-hHku) mailto:sage [2016/12/27(火) 17:06:23.75 ID:8I0GRdm60.net] うめ
1012 名前:デフォルトの名無しさん (ワッチョイ 8f7b-YyGO) mailto:sage [2016/12/27(火) 23:13:31.51 ID:YmRmCI2N0.net] 梅
1013 名前:デフォルトの名無しさん (ワッチョイ 4f17-YQ1g) mailto:sage [2016/12/27(火) 23:58:49.99 ID:tR2ogx270.net] う
1014 名前:デフォルトの名無しさん (ワッチョイ 379d-i5Qz) mailto:sage [2016/12/28(水) 00:23:32.44 ID:gZZUj22C0.net] 1000ならWinForms大復活、2017以降は主力になる
1015 名前:過去ログ ★ [[過去ログ]] ■ このスレッドは過去ログ倉庫に格納されています