ふらっとVisual C#,C♯,C#(初心者用) Part96at TECH
ふらっとVisual C#,C♯,C#(初心者用) Part96 - 暇つぶし2ch2:デフォルトの名無しさん
12/08/05 16:39:56.38

人生初2Get

3:デフォルトの名無しさん
12/08/05 21:07:24.24

人生初3Get

4:デフォルトの名無しさん
12/08/05 21:20:04.01
          ____
        /´-――-、\
      //  ,-―=ヽ、 \ \
      / /   (_ノ-t Y )-、 ヽ ヽ
     .l i   ノっ \ーi |  i |
     | |   く、   (_`し´   | |
     .l i    i_/  Y   ./ /
      ヽヽ   /  /   / /
       \\_ ` ̄ ´   //
        フ ,_⌒)  (⌒´、く
       く く  ̄    ̄´> >
        ヽ ヽ     / /
         ヽ i´ ) ( `i /
         .ヽー´ `ー/
          |⊂二⊃|
          ヽ====ノ
           `i-/´
            V
.            ∧
          /  \
          \  /
.           ヽ /
            ∨
          //      | |
         //Λ_Λ  | |
         | |( ´Д`)// <うるせぇ、家庭科のアレぶつけんぞ
         \      |
           |   /
          /   /

5:デフォルトの名無しさん
12/08/05 21:35:25.26
なにそれ

6:デフォルトの名無しさん
12/08/05 21:36:12.33
糸通しじゃね?

7:デフォルトの名無しさん
12/08/05 22:06:51.38
そういやそんなのあったな

8:デフォルトの名無しさん
12/08/06 00:23:53.80
新スレダーなんちて

9:デフォルトの名無しさん
12/08/06 18:07:56.76
糸通しでかすぎて普通に糸だけ通すほうが楽だった記憶しかない

プログレスバーの値を設定すると、すぐにその値の表示にならないで
バーがスーっと伸びてくアニメーション入るんだけど
あれってXPではなかったよね?Vistaから?
無効にする方法があったら教えて欲しい

10:デフォルトの名無しさん
12/08/06 18:35:50.01
HttpWebRequest/HttpWebResponseのキャッシュ機能を
自前のルーチンに差し替えることはできるでしょうか?


11:前スレ987
12/08/06 19:57:32.72
>>前スレ994
左側にアスタリスクがついてるやつです

>>前スレ995
ListViewですか・・・

こういうカスタムコントロール作るのがすごい苦手なので、何か参考になるページとかないですか?
描画関連とかすごい苦手です

12:デフォルトの名無しさん
12/08/06 20:06:19.79
まさに前スレ994が言ってることですよ
まず確認しろ

13:前スレ987
12/08/06 20:25:59.23
>>12
すいません。確認してきました。無事消す事ができました
あと左上のボタンみたいなやつは消せないんでしょうか?

14:デフォルトの名無しさん
12/08/06 22:49:13.40
クラス名、変数名、メソッド名などに漢字を使わない方がよいのでしょうか?
メリット、デメリットははいくつかありますが
情報量、可読性の観点からどんどん使用すべきだと思うのですが、毛嫌いする人が多いです
どうなんでしょう?

15:デフォルトの名無しさん
12/08/06 22:54:24.64
慣れの問題と標準で用意されてる部品はすべて英字になってるしなあ・・・

どこぞの社長みたいなことは言わないけどなんとなくコレジャナイ感がするのは事実

16:デフォルトの名無しさん
12/08/06 22:55:26.19
単純に打ちにくい

17:デフォルトの名無しさん
12/08/06 22:57:14.47
>>14
日本語版以外のプラットフォームで編集することを考えると問題になるかも

俺はちょくちょく使うけど、IMEのオンオフが案外邪魔くさくて思考と作業の流れが悪くなる
あと日本語つかってると、見た目的にプロっぽくないという罠がw

18:デフォルトの名無しさん
12/08/06 23:03:50.28
>>15>>16>>17
そうですよね・・・何となく本流とは違うイメージというか・・・
少なくとも納品用のコードに漢字を入れられる程勇気のある人はいないって感じですよね・・・
無駄な齟齬や不和を産むくらいなら歴史に身を委ねた方が良さそうですね

19:デフォルトの名無しさん
12/08/06 23:54:16.82
命令語が英語だから、識別子だけ日本語にするとちょっと違和感あるな。

C# じゃなくて、Excel マクロ (VBA) でちょくちょく使うけど、入力が面倒だけど
確かにわかりやすい。

ただ、英語だと例えば複数のボタンを表す配列なんかを普通に Buttons と
複数形が使えるけど、日本語って複数形に相当するものが無いからちょっと困る。

ボタン達 というのも変だしね (w

20:デフォルトの名無しさん
12/08/06 23:57:06.19
最近テストメソッド名に使うってフィードを見たけど
俺の狭い世界の中では知らないな

21:デフォルトの名無しさん
12/08/07 00:00:08.30
>納品用のコードに漢字を入れられる程勇気のある人はいないって感じ

納品できるレベルでないコード出荷してる人たちなら大丈夫だよ
現にいるしw

22:デフォルトの名無しさん
12/08/07 00:10:54.22
変数名とかに日本語使わないほうがいいかって話になると
いつも英名がいい的な流れになるけど個人で作るものは日本語でやるわ。
仕様とかまとめておかなくても大まかに見ればすぐに思い出すし
サンプルコードの変数名を日本語に書き換えると理解が深まる
2005あたりからリファクタも優秀だから
仕事で作るものも日本語で作って後から英名に変えるのも楽だし






まぁなんつーか少数派だって自覚はあるぽ。


23:デフォルトの名無しさん
12/08/07 08:12:38.33
ぶひ

24:デフォルトの名無しさん
12/08/07 08:36:36.11
昔勤めていたキチガイ現場では、
業務用語をExcite翻訳を通した奇怪なエイゴを辞書管理してプログラムを作っていた

伝票番号…CheckNumber
貸借区分…DebtorCreditKbn

付き合ってられん

25:デフォルトの名無しさん
12/08/07 09:43:31.54
denpyoBango,chinshaKubunなんて高卒か専門卒の集まりだろ

26:デフォルトの名無しさん
12/08/07 09:44:39.44
貸借=たいしゃく な

27:デフォルトの名無しさん
12/08/07 09:47:36.78
やん><

28:デフォルトの名無しさん
12/08/07 11:39:30.88
賃貸
賃借
貸借
まあフォントわかりにくいかなw

29:デフォルトの名無しさん
12/08/07 11:39:56.06
区分をkbnって誰がやりだしたんだろ
やっぱ低脳でお馴染みのコボラーだろうか

30:デフォルトの名無しさん
12/08/07 11:42:00.20
漢字はQRコードの仲間とも取れるのであまりお勧めしない
フォントのレンダリング周りがあれなwindowsだと特に

31:デフォルトの名無しさん
12/08/07 13:49:17.42
試したことないけど全角変数って遅くなりそうなイメージ
てか、よくわからん不具合出そうな気がして使えん

32:デフォルトの名無しさん
12/08/07 13:56:42.82
>>31
それはないVB6.0のころから内部は2バイトコード化されてるので
むしろ半角であっても2バイトで管理されてる状態

だからこそ全角文字を変数に使える

この辺ができてないgccなんかだとS-JISの全角入ってると特定コードで
えらいことになるし

33:デフォルトの名無しさん
12/08/07 14:07:45.83
フレームワークとかが対応してないことがあるしな

34:デフォルトの名無しさん
12/08/07 15:42:01.00
区分 kbn
種別 sbt
コード cd
ネーム nm

母音省略した名前はよく見るな・・・

35:デフォルトの名無しさん
12/08/07 15:49:06.83
日本語の母音略すのはなんとなく読めるけど
英語は略すとわからなくならないか

36:デフォルトの名無しさん
12/08/07 16:45:22.84
実行中のアセンブリが参照しているアセンブリの一覧を取得するにはどうすればいいのでしょうか?


37:デフォルトの名無しさん
12/08/07 17:10:12.44
Assembly.GetReferencedAssemblies
実行中のアセンブリってのは複数定義があるだろうから
好きなAssemblyインスタンスを取ってこい

38:デフォルトの名無しさん
12/08/07 18:03:01.54
>>35
慣れれば大丈夫だろ

イスラエル人は子音だけで文章書くヘブライ文字つかってるけど問題ないようだし
アラブ人も子音だけで文章書くアラビア文字つかってるけど問題ないようだし
(アラビア文字には母音記号があって、たまに母音記号付ける事もあるようだけど)

39:デフォルトの名無しさん
12/08/07 18:10:58.14
>>19
ボタン達でいいんじゃね?
ボタンら、ボタンsでもいいかもw

複数のボタン、ボタン(複数)とかが日本語的に一番いいかも

40:デフォルトの名無しさん
12/08/07 20:20:23.80
ボタンズ

41:デフォルトの名無しさん
12/08/07 20:45:10.69
押されるモノ達
うーん。個人的には「ボタン群」かなぁ

42:デフォルトの名無しさん
12/08/07 20:57:05.64
>>41
ボタン群が一番日本語として違和感ない感じで字数も少なくていいな

43:デフォルトの名無しさん
12/08/07 20:58:21.12
ボタンからして駄目なんじゃないの?

44:デフォルトの名無しさん
12/08/07 21:40:26.57
なぜか唐突にブッチフォンが脳内に

45:デフォルトの名無しさん
12/08/07 21:43:59.65
ボタン(複数) で

46:デフォルトの名無しさん
12/08/07 22:11:52.08
>>42
要素数2とかで群はちょっと過剰な感じ

47:デフォルトの名無しさん
12/08/07 22:18:12.51
menuStripからのイベントの処理って、そのフォームのクラスに書くしかないでしょうか?
メニューに機能が増えてくると、そのイベント処理のコードが長くなって見難くて嫌なのですが

48:デフォルトの名無しさん
12/08/07 22:20:51.49
>>47
menuStripを継承した自作クラスを作ってそこへまとめたいコードを書く

その自作クラスは一度ビルドすると部品の一番上に紫のギアのマークででてくるんで
それをFormに貼り付ければOK

49:デフォルトの名無しさん
12/08/07 22:26:33.69
>>48
なるほど!ありがとうございます。やってみます

50:デフォルトの名無しさん
12/08/07 22:35:28.10
こんな感じ
URLリンク(www.dotup.org)
URLリンク(www.dotup.org)

51:47
12/08/07 23:07:41.93
すいません。
yMenuStripの方へコードを書く方法がわかりません…。

52:デフォルトの名無しさん
12/08/07 23:13:06.79
>>51
URLリンク(ideone.com)
こんな感じ

本来はデザイナー上でイベントとかを設定するとIDEが
Form1.Designer.csに書いてるんだけどね

53:デフォルトの名無しさん
12/08/08 02:46:03.44
 韓国開発研究院(KDI)が5日に発表した報告書によると、統計庁の2011年の家計金融調査を分析した
結果、借金を抱える世帯の33%が赤字状態で、7%は負債が資産を上回っていることが分かった。

 韓国の世帯数は1757万世帯(2010年現在)で、うち借金がある世帯が63%を占めることから、借金があり、
かつ赤字状態の世帯は365万世帯に達することになる。また、負債が資産よりも多く、かつ赤字状態の世帯は
全体の3.3%(36万世帯)だった。特に債務返済能力は低所得層ほど低いことが分かった。

 漢陽大のハ・ジュンギョン教授は「不動産市場の低迷で資産の売却が難しく、借金があり赤字状態の世帯が
さらに借金を重ねる悪循環に陥る可能性がある」と懸念を示した。

キム・テグン記者


朝鮮日報/朝鮮日報日本語版: 2012/08/06 09:08
URLリンク(www.chosunonline.com)


54:デフォルトの名無しさん
12/08/08 05:25:06.98
全部読んだ

55:デフォルトの名無しさん
12/08/08 14:17:33.93
すみません。ご存じの方がいらしたら教えてください。

vc#のchartコントロールで、
X軸のpoint数をあらかじめ設定する方法を教えてください。

chart1.Series[0].Points.AddY(xx)などで追加していくのではなく、
グラフを描画する前にpointの数を定義したいのです。

point数は可変なので、デザイナで定義するわけにもいかず困っています。

56:デフォルトの名無しさん
12/08/08 14:28:27.58
デザイナーでダミー放り込んでおけばいいんでないの?
URLリンク(www.dotup.org)

項目を有効にすると赤丸付近に項目追加用の窓を開くためのボタンがでてくるので
上の画像のように辿っていけば・・・

57:デフォルトの名無しさん
12/08/08 14:56:41.94
>>56
さっそくのご回答ありがとうございます。
具体的には以下のような事をやりたいのですが、
ダミーを作っても問題ないでしょうか。

例えばpoint数が100とした場合に、グラフにするデータが1~50point分までしかないときは、
後ろ50ポイント分は空白のグラフ表示としてしておきたいのです。
(一定時間毎にデータが追加され、時間と共にグラフが埋まっていくイメージです)

58:56
12/08/08 16:21:22.93
チャートはほとんど使った事無いのでこれでいいかよくわからんが
ご所望の動作はこんな感じ?
URLリンク(ideone.com)

プロジェクト作ってcharを貼り付けてそのままコピペすればいける

59:56
12/08/08 16:26:15.17
この方がいいか
URLリンク(ideone.com)

最初は0で設定してるので数字をある程度設定するまで縦軸の数字が
安定しないからチラつく

60:デフォルトの名無しさん
12/08/08 16:33:55.84
グラフなんて自分で書くべき

61:デフォルトの名無しさん
12/08/08 16:44:11.47
WPFなんかのINotifyPropertyChangedぽいことができれば部分変更だけでいいのにねえ・・・

62:デフォルトの名無しさん
12/08/08 17:18:45.80
>>55
chart1.ChartAreas[0].AxisX.MaximumのデフルトがAutoだから、最大値を入れるのじゃダメなん?

63:デフォルトの名無しさん
12/08/08 17:44:15.42
class Program
{
[STAThread] // これ
static void Main()
{
Application.Run(new Form1());
}
}

Mainの上の[]が一般に何を意味するのか調べたいんですがどんなワードで検索すればいいでしょうか?


64:デフォルトの名無しさん
12/08/08 17:51:47.49
まずそのまま検索してみろよ

65:55
12/08/08 17:56:52.02
>>56さん
>>62さん
さっそく試してみます。
取り急ぎお礼まで、ありがとうございました。

66:デフォルトの名無しさん
12/08/08 17:59:06.87
URLリンク(eternalwindows.jp)
シングルスレッドアパートメント(STA)なスレッド
設定したことないけどMTAThreadもあるのかな?

まあ凝ったことしない人にとってはおまじないと思っておけば

67:デフォルトの名無しさん
12/08/08 18:02:15.35
[この括弧そのものは属性ね]

68:デフォルトの名無しさん
12/08/08 18:15:45.18
ありがとうございます、c# 属性で検索したら出てきました

69:デフォルトの名無しさん
12/08/08 18:41:43.02


 ヘ(; `Д)ノ ←9秒86 カール・ルイス
≡ ( ┐ノ
:。;  /
             ヘ(; `Д)ノ←9秒79 ベン・ジョンソン(ドーピング)
           ≡ ( ┐ノ
           :。;  /
             ヘ(; `Д)ノ←9秒79 モーリス・グリーン
           ≡ ( ┐ノ
           :。;  /
               ヘ(; `Д)ノ←9秒72 アサファ・パウエル(前世界記録)
             ≡ ( ┐ノ
             :。;  /
                  ヘ(; `Д)ノ←9秒71 タイソン・ゲイ
                ≡ ( ┐ノ
                :。;  /

                        一二 (゚ω゚ )←9秒58 ウサイン・ボルト
                      一二  /    \
                     一二((⊂ /)   ノ\つ))
                       一二  (_⌒ヽ
                        一二  丶 ヘ |
                         一二  ノノ J

70:デフォルトの名無しさん
12/08/08 20:13:25.03
来月から入る予定の職場でC#を使う予定で、バージョンは2.0なので、
Javaの知識があれば参考書を本番前に読みこめばなんとかなると思ってるのですが、
参入前に覚えておいたほうがいいことって何か他にありますか?

別の言い方をすれば、.NETを勉強するには、何かいい書籍などありますか?

71:デフォルトの名無しさん
12/08/08 20:19:37.89
習うより慣れろ


72:デフォルトの名無しさん
12/08/08 20:26:21.18
あるアセンブリで呼び出し元のアセンブリを末端までたどるにはどうすればいいのでしょうか?

exe -> lib1 -> lib2 -> lib3

という呼び出しの場合に、lib3の関数内で lib2 -> lib1 -> exe それぞれのアセンブリ名を
知りたいのですがよくわかりません。



73:デフォルトの名無しさん
12/08/08 20:29:13.49
>>70
2.0とかマジ乙。
まあ、確かにJavaできる人なら2.0はそんな苦労はしないと思う。
とりあえず、Javaにはない、プロパティとかイベントとかデリゲートだけネットで検索すればいいんじゃないかと。

74:デフォルトの名無しさん
12/08/08 20:44:12.47
>>72
StackFrameを使ってコールスタックを見る
逆ならAssembly.GetEntryAssembly()→GetReferencedAssemblies()とか

75:デフォルトの名無しさん
12/08/08 20:51:51.40
>>71
何か作ればいいんですかね?

>>73
ありがとうございます。
言語仕様は、仰るとおりデリゲートとか以外は大差ないと思ってるのですが
ただ何かを作る際は、.NETの取り扱いが重要になってくるのではないかと思ったのです

76:デフォルトの名無しさん
12/08/08 21:03:43.96
>>74
やってみます。

77:デフォルトの名無しさん
12/08/08 21:54:31.25
>>75
どういうの作るか分からないと何とも言えないな。
Visual Studioを使い慣れるついでに仕事と関係してそうなチュートリアルをやっとくといいんじゃないか。

URLリンク(msdn.microsoft.com)
この辺参考に
・Windows フォームのチュートリアル
URLリンク(msdn.microsoft.com)
・Windows フォーム アプリケーションのコード
URLリンク(msdn.microsoft.com)

78:デフォルトの名無しさん
12/08/08 23:48:25.88
using System;
using System.Drawing;
using System.Windows.Forms;

class Program {
[STAThread] static void Main() {
Application.EnableVisualStyles();
Application.Run(new MyForm());
}
}

class MyForm : Form {
Font font;
public MyForm() {
font = new Font("Times New Roman", 15, FontStyle.Regular);
Controls.Add(new Label() {
Text = "Dragon Ball Z",
ForeColor = Color.Red,
Font = font,
AutoSize = true
});
}
}

こんな感じのサンプルを見たんですが、このプログラムはfontのDisposeをどこからも呼んでいませんが、リソースリークの問題はないんでしょうか?


79:デフォルトの名無しさん
12/08/08 23:54:49.75
>>77
ありがとうございました。

80:デフォルトの名無しさん
12/08/09 00:11:13.12
>>78
アプリを閉じる時に自動で解放してくれる。

81:デフォルトの名無しさん
12/08/09 01:30:40.54
参照切れれば実行中でも解放されるけどね

82:デフォルトの名無しさん
12/08/09 05:02:44.20
いやたぶん、カベージコレクタが作動した時に開放される、が正解

83:デフォルトの名無しさん
12/08/09 05:05:43.86
>>78
Disposeはマネージドリソース(ファイルとか)の解放に使う
マネージドリソース(=.Net Framewotkで書かれたライブラリ)の
場合はよきにはからってくれる

84:デフォルトの名無しさん
12/08/09 05:48:57.13
自演乙

85:デフォルトの名無しさん
12/08/09 05:57:16.36
>>82
それもちょっと違う。
FinalizeメソッドのあるオブジェクトをGCで開放するには最低でも2回のGCが必要。
1回目のGCでは回収されず古い世代に昇格され、Finalize待機キューに追加される。
その際に直接・間接的に参照する全てのインスタンスも道連れにして古い世代に昇格するためメモリの圧迫要因にもなる。

その後別スレッドで逐次Finalizeメソッドが呼ばれ、Finalize待機キューから削除される。

最後にもう一度GCが走ったら終了(世代が昇格しているためGen1/Gen2のGCを待たなければならない)
こういう事情があるから、予想以上に長生きしてしまう可能性がある。

あと「GC.SuppressFinalize(this);」があるDisposeメソッドが実行済みであれば
アンマネージ リソースは解放済みであるとして一連の処理は行われない。

86:デフォルトの名無しさん
12/08/09 09:14:01.89
class Form1 : Form {
private Font font;
protected override void OnClose(EventArgs e) { base.OnClose(); if(font != null) font.Dispose(); }


87:デフォルトの名無しさん
12/08/09 10:41:25.27
IDisposeを持つオブジェクトのDisposeを呼ばず
GCからのFinalizeに任せるのは基本的にはバグ相当

88:デフォルトの名無しさん
12/08/09 10:53:11.90
static void Main() {
Form f = new Form1();
Application.Run(f);
f.Dispose();
}
これで連鎖的にすべてのリソースを解放してくれるからForm派生クラス側はなにも気にしなくていいよ

89:デフォルトの名無しさん
12/08/09 11:42:42.31
終了まで短時間で解放をOSに任せるというならともかく、
Form1のメンバにIDisposableがあっても自動では呼んでくれないし
Application.Run中に例外が出たらf.Dispose();すら呼ばれない
usingも知らないのに安易なレスしちゃ駄目だよ

90:デフォルトの名無しさん
12/08/09 11:54:49.82
ん?おれはコントロールのDisposeはControlsの要素にも再帰的に呼ばれるって習ったけど?

91:デフォルトの名無しさん
12/08/09 12:03:11.17
FileStreamなんかもControlsに突っ込む勢いか

92:デフォルトの名無しさん
12/08/09 12:13:47.92
さすがにFile関係は必要なとこメモリに読み込んだらすぐ閉じるでしょ
今はControlが生きてる間は保持しておかなきゃいけないリソースをどうするかが問題


93:デフォルトの名無しさん
12/08/09 12:19:54.41
まさに初心者スレ

94:デフォルトの名無しさん
12/08/09 12:37:29.22
Dispose呼ばれるタイミングとか考えないといけないし
disposingとかもなんのために在るのか分からないし大変
C#難しすぎる
C++のがコード見たまま理解できるからわかりやすいね

95:デフォルトの名無しさん
12/08/09 12:43:58.27
スレに常駐している初心者だけど、面倒ならusing使えじゃダメなの?

96:デフォルトの名無しさん
12/08/09 12:51:16.10
FormはClose=Dispose
閉じれば全ては終了

97:デフォルトの名無しさん
12/08/09 13:06:31.28
↓これでいいですか?

class Program {
[STAThread] static void Main () {
using (Form form = new FormEx ()) {
Application.Run (form);
}
}
}

class FormEx : Form {
Font font = null;
public FormEx() {
font = new Font("Times New Roman", 24, FontStyle.Regular);
try {
Controls.Add(new Label() { Font = font, Text = "Hello, world!", AutoSize = true });
}
catch {
font.Dispose();
font = null;
throw;
}
}
protected override void Dispose(bool disposing) {
if (font != null) {
font.Dispose();
font = null;
}
base.Dispose(disposing);
}
}

98:デフォルトの名無しさん
12/08/09 13:22:35.57
>>96
違うわw
マジでこの嘘誰が広めたんだよ

99:デフォルトの名無しさん
12/08/09 13:28:05.34
>>90
Form2つでFont共有してるときに片方Disposeするとどうなりますか?
あなたがこのスレで一番頭脳明晰とお見受けしました
どうか教えて下さい

100:デフォルトの名無しさん
12/08/09 13:42:01.88
>>99
クラッシュします

101:デフォルトの名無しさん
12/08/09 13:45:37.57
というかC#は習うもんじゃないだろ
C/C++とかは習うのもいいだろうけどC#くらいは独学でできなきゃ・・・

102:デフォルトの名無しさん
12/08/09 15:13:23.60
Disposeしても使用メモリが増え続けるんだよなぁ

103:デフォルトの名無しさん
12/08/09 15:35:31.45
そんな時のGC.Collectですよ

104:デフォルトの名無しさん
12/08/09 16:45:24.42
webbrowserコントロールでフォームにIEを埋め込んでwebサイト表示。
ここで表示したアクセスのログは、
ノーマルIEの「履歴」から見た際、
実行環境のOSやIEのバージョンによって、残ったり残ってなかったりするようですが、
「必ず残す」あるいは「必ず残さない」といった任意の指定をする方法はありますか?

105:デフォルトの名無しさん
12/08/09 17:46:57.53
WebBrowserクラスって、需要は多い割に.NETの機能の中では自在に使いこなすのが最も難しい部類よね

106:デフォルトの名無しさん
12/08/09 18:28:00.18
GCマンセーかと思ってたのに、ちまちまオブジェクトの解放を意識せんといかんて、結局今までどおりC++のが楽でいいわ

107:デフォルトの名無しさん
12/08/09 18:45:00.36
理想に裏切られると無性に腹立つよね~

108:デフォルトの名無しさん
12/08/09 18:59:24.85
DisposeしたもGC可能な状態になるだけでメモリ使用量は減らないんじゃない?
問題はGCのタイミングだけど具体的にはいつ発動するの?

109:デフォルトの名無しさん
12/08/09 19:00:20.44
付け焼刃でいいからちょっとは検索してから喋れよな

110:デフォルトの名無しさん
12/08/09 19:04:08.01
管理外(ネイティブのとか)リソースを解放するのがDisposeの目的だから、
ちゃんと作ってあるものならDispose呼んだ時点でメモリ使用料減るよ。

111:デフォルトの名無しさん
12/08/09 19:14:05.04
そもそもメモリを開放するなんてどこに書いてあるのか
URLリンク(msdn.microsoft.com)

Disposeで行われるのはDisposeの中に書いてあることだけで
暗黙的にゴミ箱にオブジェクトを置いたりとかしないよ

112:デフォルトの名無しさん
12/08/09 19:17:09.27
>>110
じゃあマネージドなリソースは結局GCで解放されるってこと?

113:デフォルトの名無しさん
12/08/09 19:20:00.90
ネイティブで確保したメモリならそうだけど
>>102の言ってるメモリはマネージドの方じゃね

マネージドのメモリはDisposeしたところで
GC可能になるわけもなく、解放されないから
参照を持ち続けてるなら当然使用メモリは増えていく

114:デフォルトの名無しさん
12/08/09 19:20:45.75
>>113>>110

115:デフォルトの名無しさん
12/08/09 19:24:54.89
     l-l   ,-、,-、
   / ̄  ̄\   \
  l  iillllllllllllii l l;;;;;l l;;l
  l  llllllllllllllll  l l;;;;;l l;l
  `、 ``´´  /  l;;;;l ll
   `l ̄ ̄ ̄l  ll l/ /丶
      l    l  ノノ l l  l ̄─、
   /\_∠ノノ l´l l l    `l    ____
   (      l  l` 、 l ll ,─、l   /     \    ゴチャゴチャうっせーよ
  /  ___」  l_ノ l  l丶、_/ /   ⌒  ⌒ \   うちころすぞ
  (     ̄ ̄l    _」__⊥、/ /    (●)  (●) \
  )       `-─ ̄  l´ )  |   、" ゙)(__人__)"  )    ___________
  (   ─_____-─´、  \      。` ⌒゚:j´ ,/ j゙ ̄ ̄| | |             |
  `l             l `) /          \  |__| | |             |
   l  ─_____ニ ̄ ̄              \n||  | |             |
   丶_         l ̄)              r.  ( こ) | |             |
      ─____─ ̄ l                 |\ (⊆ソ .|_|___________|
        `、 l     l /          ̄ ̄ ̄ ̄ ̄l二二l二二  _|_|__|_
         丶l___」/



116:デフォルトの名無しさん
12/08/09 19:29:14.04
当ててみろ ハワイへご招待するぜ

117:デフォルトの名無しさん
12/08/09 19:30:32.59
───────────────────────
  / ̄ ̄ ̄ヽ_    / ̄ ̄ ̄ヽ_      / ̄ ̄ ̄ヽ_ ̄ ̄ヽ_´ ̄ヽ_.    ∠ ̄ ̄ ̄\      / ̄ ̄ ̄ヽ_ 
 _/  /\ノ\) . _/  /\ノ\)     _/  /\ノ\)、ノ\)、ノ\)   ∠       ヽ.    _/  /\ノ\) 
/  // ッ  ッヽヽ /  // ッ  ッヽヽ  ./  // ッ  ッヽヽ ッヽヽ ッヽヽ   /  ̄ ̄ヽ、   i   /  / ヽ  /  ヽ
|  |  (・) (・)  | . |  |  (・) (・)  |   |  |  (・) (・)  | (・)  | (・)  | .  |  ^    ヽ   !   |  |  (・) (・)  |
| C    ゝ   .! .| C    ゝ   .!   | C    ゝ   .!ゝ   .!ゝ   .!   |  、^ ^ |  i.  | C    ゝ   .!
ヽ_フ  ー‐  / .ヽ_フ  ー‐  /   ヽ_フ  ー‐  /ー‐  /ー‐  / .  ヽ  )>   つノ .   ヽ_フ   Д  / 
    `ー─´   .    `ー─´.        `ー─´`─´`─´     `ー─´         `ー─´  
───────────────────────
     ドン         ドン           ド    ド   ドン       ハァイ          イクラ!

118:デフォルトの名無しさん
12/08/09 19:39:26.70
>>112
ほんとに誰も参照してないならね。

GC持ってる言語におけるメモリリークってのは、
どこか意図しないところで参照を持ち続けてしまって、いつまでたってもGC対象にならないオブジェクトを作ってしまうこと。

119:デフォルトの名無しさん
12/08/09 19:41:58.82
GC → 不要になったマネージメモリを解放
Dispose → マネージメモリ以外のリソースを解放
Finalize(GC)経由でDispose → Dispose呼び忘れの被害を軽減するためのバカ対策

120:デフォルトの名無しさん
12/08/09 20:04:00.04
Disposeは直接呼ばずにusingでまとめて呼ぶか、try-finallyすること

URLリンク(ideone.com)

[NG]
void Dispose(){
  a.Dispose();
  b.Dispose(); //a.Disposeが例外投げたらリーク
}
[OK]
void Dispose(){
  using(a)
  using(b)
  {}
}
[OK]
void Dispose(){
  try{a.Dispose();}finally{
  try{b.Dispose();}finally{
  }
  }
}

※ { using(a){} using(b){} } とusingを分けるとNG

121:デフォルトの名無しさん
12/08/09 20:31:41.58
比較的涼しいのにどうしたんだ

122:デフォルトの名無しさん
12/08/09 20:38:11.66
>>120
アホな心配する前にnullチェックしろよ

123:デフォルトの名無しさん
12/08/09 20:50:19.44
>>39
識別子に半角括弧は使えないよ。
そもそも、関数だとわけわからんことになるだろ。(w

>>41-42
おお、ボタン群か…、>>46 が言うようにちょっと重いけどいいかも。

>>43
ボタンは単なる例だよ、それぐらい読み取れるようになろうよ…

>>45
VB の配列とかだと、ボタン(複数)(ボタン番号) とかなってしまう (w


124:デフォルトの名無しさん
12/08/09 20:51:41.77
クソども(複数形)

125:デフォルトの名無しさん
12/08/09 20:54:23.00
例えば複数形で、lineをlinesとするなら
単数形はlineじゃなくてalineにしなきゃおかしくね?

126:デフォルトの名無しさん
12/08/09 20:59:08.59
自分では絶対に日本語識別子使わんからどうでもいいけど、「~~のリスト」でいいだろ

127:デフォルトの名無しさん
12/08/09 20:59:50.54
>>125
英語という自然言語そのものに文句言ってくれ。

128:デフォルトの名無しさん
12/08/09 21:22:38.71
>>127

         ●●                        ●●
     ● ●   ●                     ●   ● ●           /   \
    ●  ●   ●                     ●   ●   ●        /      \
   ●     ●●                        ●●     ●
  ●                                         ●      _____
  ●                                          ●            /
 ●                 ●●●●●●                 ●         / /
 ●                 ●      ●                 ●        /
 ●                 ●      ●                 ●       ./
 ●                 ●       ●                 ●
 ●                 ●       ●                 ●     / ̄ ̄\
 ●                ●        ●                 ●     |      |
  ●               ●         ●                ●      \    /
  ●              ●         ●               ●          /
   ●             ●          ●              ●           |
    ●           ●●●●●●●●●             ●
     ●          ●           ●            ●            ○

129:デフォルトの名無しさん
12/08/09 21:25:12.40
いくつかの辞書でしらべてみたが、alineは動詞しかないようだが

130:デフォルトの名無しさん
12/08/09 21:30:44.23
>>129

         ●●                        ●●
     ● ●   ●                     ●   ● ●           /   \
    ●  ●   ●                     ●   ●   ●        /      \
   ●     ●●                        ●●     ●
  ●                                         ●      _____
  ●                                          ●            /
 ●                 ●●●●●●                 ●         / /
 ●                 ●      ●                 ●        /
 ●                 ●      ●                 ●       ./
 ●                 ●       ●                 ●
 ●                 ●       ●                 ●     / ̄ ̄\
 ●                ●        ●                 ●     |      |
  ●               ●         ●                ●      \    /
  ●              ●         ●               ●          /
   ●             ●          ●              ●           |
    ●           ●●●●●●●●●             ●
     ●          ●           ●            ●            ○

131:デフォルトの名無しさん
12/08/09 21:58:43.43
Disposeが例外投げる仕様ってどうなんだ?
C++使いからすると吐き気がするんだが

132:デフォルトの名無しさん
12/08/09 22:02:13.81
何のDisposeの話?
Disposeはインターフェースのメソッドで例外投げるかどうかは実装によるから何ともいえないよ

133:デフォルトの名無しさん
12/08/09 22:06:00.59
>>131
データベースのセッション閉じるときとかに、どうしても欲しくなるときがあるっぽいけども。

C# のusingだとDispose時の例外拾えないけど、
Javaのtry-with-resources構文なら拾えるぜってJava方面の人が喜んでた。

134:デフォルトの名無しさん
12/08/09 22:07:51.05
多分その用途だとFinalizeとして考えるよりPythonのContextみたいのを考えるべきかもね
Javaはそっちに近いだろう

135:デフォルトの名無しさん
12/08/09 22:11:48.37
そもそもDisposeの例外発生を考慮して書く
というのもいかがなものか
例外出しちゃう実装がヘボイという事では?

136:デフォルトの名無しさん
12/08/09 22:17:39.97
>>122
>nullチェックしろよ
何のために?
URLリンク(ideone.com)

137:デフォルトの名無しさん
12/08/09 22:34:13.27
Close事前に呼んどいたらいいじゃん

138:デフォルトの名無しさん
12/08/09 22:34:55.05
自分でDispose書くときは例外を外に出さないようにするけど
よそのライブラリとかのDisposeからは例外が飛んでくる可能性があるものとして扱ってる

MSが「Disposeから例外をスローしてはいけません」って断言してくれと良いんだけど
少なくとも.NET1.1の頃は
URLリンク(msdn.microsoft.com)(v=vs.71).aspx
>場合は、 Dispose は例外をスローできます。
なんて書いてある

2.0以降はこの文が無くなってるけど「常にスローしない」かどうかは
説明の歯切れが悪い

139:デフォルトの名無しさん
12/08/09 22:35:19.67
>>136
どあほう
URLリンク(ideone.com)

140:デフォルトの名無しさん
12/08/09 22:40:54.67
using使えよアホ

141:デフォルトの名無しさん
12/08/09 22:43:02.46
>>120に言え

142:デフォルトの名無しさん
12/08/09 22:47:00.61
てかみんなどうやってリソース関係のコード書いてるんだ
class Hoge {
IDisposable manA; // マネージド
IDisposable manB; // マネージド
IDisposable unmanA; // アンマネージド
IDisposable unmanB; // アンマネージド
/* ry */
}
ちょっとだれか/* ry */を埋めて完璧なコード書いてくれ
すべてのリソースはコンストラクタで確保する前提で

143:デフォルトの名無しさん
12/08/09 22:57:52.82
IDisposableの時点でアンマネージドとは言い難い気がする

144:デフォルトの名無しさん
12/08/09 22:58:58.24
Disposeで例外スローするゴミ実装なんてやるなよ

>>142
アンマネージ リソースをクリーンアップするための Finalize および Dispose の実装
URLリンク(msdn.microsoft.com)
Dispose メソッドの実装
URLリンク(msdn.microsoft.com)

145:デフォルトの名無しさん
12/08/09 22:59:41.38
前提として、IDisposable=アンマネージド用
URLリンク(msdn.microsoft.com)(v=vs.110).aspx

.netでマネージリソースと言えるのはGC管理のメモリだけ

>>143
もしかして:マネージド

146:デフォルトの名無しさん
12/08/09 23:05:28.92
>>144
TransactionScopeの悪口は止めろ

147:デフォルトの名無しさん
12/08/09 23:26:08.41
int* a,b
だと
普通のC言語だと
bは普通のint型変数になるけど
C#で
int* a,b
って書いた場合は
bもポインター型になるのか

unsafeなんてめったに使わないからうっかり間違うことはないか

148:デフォルトの名無しさん
12/08/09 23:27:51.95
>>147
C#はそもそも同じ型しか同時に宣言できないだろ
Cの宣言は混乱の元だよ
そんな糞宣言できるようにしてるからポインターで悩むやつがいるんだ

149:デフォルトの名無しさん
12/08/09 23:34:00.13
Cのポインタ関連の記述はほんと見づらいね
ポインタの概念はわかるけどCのポインタはもうすっかりわからん

150:デフォルトの名無しさん
12/08/09 23:40:27.69
問題はDisposeを誰が呼ぶか。
考えてみれば当然だが落とし穴。
// NG i=1600で落ちた。
for (int i = 0; i < 10000; i++){
this.button1.BackgroundImage = Image.FromFile("~");
}
// OK 余裕で完走
for (int i = 0; i < 10000; i++){
var image = this.button1.BackgroundImage;
this.button1.BackgroundImage = Image.FromFile("~");
image.Dispose();
}


151:デフォルトの名無しさん
12/08/09 23:45:59.59
ちなみにNGの方、GC.Collect()入れても結果変わんなかった。
何で?

152:デフォルトの名無しさん
12/08/10 00:08:14.19
GC.Collect()の後にGC.WaitForPendingFinalizers()を入れてみたら?

それでも変わらないならImage.FromFileから返るオブジェクトに
FinalizeからDispose呼ぶ処理が書かれてないんだろうね
書くのは必須では無いし

153:デフォルトの名無しさん
12/08/10 02:47:17.55
これだ!ありがとう。
でもOutOfMemoryが発生する前に自動でこれをやってくれたらいいのに。
Dispose呼んでないけど参照は解放したわけだし。

154:デフォルトの名無しさん
12/08/10 06:13:08.62
>>126
pubic Button [] ボタンのリスト; // ← 配列なのにリストって馬鹿の極み、そもそも今時実装を意識させる命名なんてありえない。

155:デフォルトの名無しさん
12/08/10 06:33:39.94
自動でやってくれないし、ほっといたらGCがいつ走るかわからんから
なるべくDisposeで自分で開放しましょう、ってことになってるんだろ

156:デフォルトの名無しさん
12/08/10 06:41:18.72
IList<T>はインターフェイスであって実装ではないけど
つーか実装の隠蔽を主張するならまず配列を止めろ

157:デフォルトの名無しさん
12/08/10 07:03:22.39
>>156
>>125 は、( 配列とかリストとかの実装に関係なく複数の奴は ) 「~~のリスト」でいいだろ
と言う主張だと思うんだが、理解してないのか?

158:デフォルトの名無しさん
12/08/10 07:16:48.71
>>157
>>125は知らんが>>126は違うぞ
俺が書いたから分かる
最初はリスト/コレクション/シーケンスって書いてあったけど長いから削ったんだよ

159:157
12/08/10 07:33:34.17
>>158
すまん、レス番間違えてたな。

> 最初はリスト/コレクション/シーケンスって書いてあったけど長いから削ったんだよ

だから、そういう実装方法を名前に入れるのがおかしいと言ってるんだよ。
最初リストで作ってて途中でコレクションに変えたら、名前まで変えるのか?

160:デフォルトの名無しさん
12/08/10 07:48:54.46
今更昨日のショボイネタを掘り返さんでもよかろうに

161:デフォルトの名無しさん
12/08/10 08:28:45.39
>>156 に言ってくれよ。

162:デフォルトの名無しさん
12/08/10 09:18:37.08
>>126!=>>156=>>158

163:デフォルトの名無しさん
12/08/10 11:51:05.51
ベトナム人に突っ込まれる韓国人
URLリンク(pds.exblog.jp)

164:デフォルトの名無しさん
12/08/10 11:55:26.24
ネトウヨきもっ、まで読んだ。

165:デフォルトの名無しさん
12/08/10 11:56:19.36
最後まで読んだ
さすが姦酷人

166:デフォルトの名無しさん
12/08/10 14:15:14.96
日本語表現のリストってのはもっと広い意味を持つ単語だとは思うが
まあ特定のクラスを思い浮かべる人がいるから避けといた方が良いってことが実証されたじゃないか


167:デフォルトの名無しさん
12/08/10 16:51:48.47
韓国大統領の竹島上陸はムカついた

168:デフォルトの名無しさん
12/08/10 16:53:54.98
質問があります
C#を勉強して半年ほどになりますが、アクセサを未だに使ったことがありません。
ウェブや書籍で勉強しているのですが、いまいちピンときません。
アクセサといったりプロパティといったり構造体といったり定義もいまいちはっきりしません。
現在利用している機能でアクセサに近いのかな?と思うものはリソースや設定ファイルだと思うのですが。
アクセサを使う利点、必要性を例えを交えて教えて頂けないでしょうか。

169:デフォルトの名無しさん
12/08/10 16:58:39.64
使う側がget,setって書かなくて済む
それだけ

170:デフォルトの名無しさん
12/08/10 17:08:05.78
>アクセサといったりプロパティといったり構造体といったり

構造体とはいわねえよw

171:デフォルトの名無しさん
12/08/10 17:29:56.80
>>168
> 現在利用している機能でアクセサに近いのかな?と思うものはリソースや設定ファイルだと思うのですが。

いったいどんなウェブや書籍をみたらそんな考えに到達するんだ?

172:デフォルトの名無しさん
12/08/10 17:57:00.72
構造体が出てきたのは
構造体の「フィールド」を「アクセサ」とか「プロパティ」と誤解しているのでしょう

173:デフォルトの名無しさん
12/08/10 18:11:55.58
wwwwwwwwwwwwwwwwwwwwwwwww

174:デフォルトの名無しさん
12/08/10 18:14:30.03
struct B{ ← 構造体
  public String Value { ←プロパティ
    get{...} ←アクセサ
    set{...} ←アクセサ
  }
  public String Value2; ←フィールド(メンバ変数)
}

175:デフォルトの名無しさん
12/08/10 18:17:22.81
C#でアクセサといった場合、一般に指しているのはsetアクセサとgetアクセサ

GetXXX、SetXXXはアクセサメソッドと呼ばれ区別されがち

176:デフォルトの名無しさん
12/08/10 18:23:44.14
汗くさそうなスレですね

177:デフォルトの名無しさん
12/08/10 18:36:28.83
フォームをレイヤードウインドウにして、時計を表示させたいんですが
override OnPaintに時計表示のコードを書いても表示されません。
どこを改善すればいいでしょうか?

レイヤードウインドウ関連の部分はコピペ丸出しで申し訳ないです・・・
URLリンク(ideone.com)

178:デフォルトの名無しさん
12/08/10 18:42:26.83
>>177
てめぇの頭。

179:デフォルトの名無しさん
12/08/10 18:47:04.53
思ったように動かなくてもいいんだがせめて動かないというのがポトペタすれば
再現できるコードにして出してくれ

いろいろ足りないみたいだし再現する状態にもっていくのに手間がかかるって

180:デフォルトの名無しさん
12/08/10 18:49:25.50
private void timer1_Tick(object sender, EventArgs e)
{
  this.Invalidate();
  this.Update();
}

181:デフォルトの名無しさん
12/08/10 19:47:34.27
C++で書いたコードを再利用するにはどうすればいいんですか?
DLLにして使うんですか?

182:デフォルトの名無しさん
12/08/10 19:49:42.10
>>179
すみません、プロジェクトごとアップしてみました。
URLリンク(www1.axfc.net)

>>180
this.Update();を追加してみましたが時計は表示されませんでした。

183:デフォルトの名無しさん
12/08/10 19:59:04.08
>>181
DLLにしてP/Invoke

184:デフォルトの名無しさん
12/08/10 20:24:14.41
>>183
ありがとうございます

185:デフォルトの名無しさん
12/08/10 20:41:57.99
        _人人人人人人人人人人人人人人人_
        >     ゆっくりしていってね!!!  <
         ̄^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^ ̄
       ,..--‐‐‐‐‐‐‐‐---..          ..--‐‐‐‐‐‐‐‐---..,
     /::::ヽ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;)        (;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::\
     |::::::::::/        ヽヽ       //        ヽ::::::::::|
    .|::::::::::ヽ ........    ..... |:|     . // .....    ........ /::::::::::::|
     |::::::::/     )  (.  .||      ||   .)  (     \::::::::|
    i⌒ヽ;;|.  -=・=‐  .‐・=-.|      .|.-=・‐.  ‐=・=-  |;;/⌒i
    |.(    'ー-‐'  ヽ. ー' |      .| 'ー .ノ  'ー-‐'    ).|
    ヽ.      /(_,、_,)ヽ  |       |  ノ(、_,、_)\      ノ
    ._|.    /  ___   .|.      .|   ___  \    |_
  _/:|ヽ     ノエェェエ>  |       |  くェェュュゝ     /|:\_
  :::::::::::::ヽヽ     ー--‐  /        ヽ  ー--‐     //:::::::::::::
  ::::::::::::::::ヽ \  ___/          /\___  / /:::::::::::::::

186:デフォルトの名無しさん
12/08/10 21:07:30.31
ゆっくりできるか

187:デフォルトの名無しさん
12/08/10 22:09:28.63
うん

188:デフォルトの名無しさん
12/08/10 22:12:16.95
きばっていこ~

189:デフォルトの名無しさん
12/08/10 22:25:31.63
>>182
そもそも
protected override void OnPaint(PaintEventArgs e)

これは呼ばれてないみたいだぞ

MessageBox.Show("hoge");

ってメソッド始まってすぐに置いたけど表示すらしねえ
こっちをみると使わないポイし
URLリンク(amonution.sblo.jp)

190:179 189
12/08/10 23:13:10.12
>>182
URLリンク(www.dotup.org)

191:190
12/08/10 23:15:48.09
普段Formアプリを作る場合はFormクラスを継承してたForm1にごりごり書いてるけど
この間にForm->hoge->Form1ともう一段別継承クラスを挟む場合
デザイナーに認識させるにはどんなおまじないを入れればいいんだ?

192:デフォルトの名無しさん
12/08/10 23:18:56.43
普通に基底クラスを書き換えればいい
作成時に選択も出来る

193:デフォルトの名無しさん
12/08/10 23:21:52.49
>>192
よくわからんw

>>190は普通にクラスを作成して継承のところをFormにしたけどそうじゃなくて
Formの追加を行って継承すればよかったのかね?

194:デフォルトの名無しさん
12/08/10 23:56:09.93
>>191
hoge を普通に定義して、エディタでクラス名をツールボックスにドラッグすれば hoge が
デザイナーに認識される。

最初やったときは、マジですげーと思った。

195:デフォルトの名無しさん
12/08/10 23:58:38.03
VS2010, WPF4で書いています。
おそらくC#ネタなのでこちらで質問いたします。

やりたいこと
・exeの「ヘルプ」ボタンをクリックすると、ローカルファイルのhtmlを開く
・htmlファイルを開くプログラムは、OSによって関連付けているもの
 (通常は、既定のブラウザ)
・htmlの途中から表示したい
 (<a name="hoge"></a> に対して <a href="foo.html#hoge"></a>のように)

つまり、ヘルプファイル(html)を、途中の章の位置から
既定のブラウザで開くことをしたいです。
(htmlをnotepad.exeなどに関連付けている場合は、救えなくて良いです)

System.Diagnostics.Process.Start("help.html");
とすれば、関連付けられているプログラムで help.html を開くことは
できましたが、 name="hoge" の位置で開くことができません。

****.Start("help.html#hoge"); などとやってもダメでした。当然ですが。

別のAPIでも構いませんので、上記を満たす方法が
ありましたらご教授願えますでしょうか。
よろしくお願いします。

196:デフォルトの名無しさん
12/08/11 00:00:17.81
>>194
カスタムコントロールはそれでいいけど今回問題にしてるのは土台となるとFormだよ

197:デフォルトの名無しさん
12/08/11 00:14:56.72
>>196
いみわからん。
Form 自体をいじりたいわけじゃないんだろ?

198:デフォルトの名無しさん
12/08/11 00:18:04.18
>>197
Formに書くんだけどFormを継承したレイヤードウインドウ対応のカスタムFormを
部品化したかったんだがうまくいかないんだよな

199:デフォルトの名無しさん
12/08/11 00:19:57.59
デザイナーのほうはpartial classで定義されていて
継承元がなんであるかなんて一切関知してない
partial class Form1
{
// 自動生成されたコード
}

だから普通にFormを作って
public class InheritForm : Form {}

public partial class Form1 : InheritForm
{
public Form1()
{
InitializeComponent();
}
}
これでいいよ。
あとはデザイナをリロードしろ。

200:デフォルトの名無しさん
12/08/11 00:22:15.91
コンポーネントのModifierがprivateだとか、
.NET2.0系のを基底に置いてるとか、
基底がインスタンス化出来ないとか

201:デフォルトの名無しさん
12/08/11 00:25:36.14
>>195
誰が何を規定のブラウザにしてるか分からんと思うけど、その差は吸収できるべきなの?

あとInternet Explorerは大したコマンドラインに対応してないので、#で指定して無理なら無理でしょうね
URLリンク(msdn.microsoft.com)

202:195
12/08/11 00:33:44.57
>>201
レスありがとうごさいます。
ユーザーシェア8割程度が救えたら良いなと
考えています。
が、いずれにしましてもIEで
出来そうにないようなので、
章を別のファイルに分けるしかなさそうですね。

ありがとうございました。

203:198
12/08/11 00:35:02.02
素のFormなら問題ないな

>>190のやつを継承すると多段継承した後の最後のFormをデザイナーが表示しねえ

204:デフォルトの名無しさん
12/08/11 00:37:18.52
>>202
#をURLエンコードした形で渡したらだめ?
"help.html#hoge"

"help.html%23hoge"

205:デフォルトの名無しさん
12/08/11 01:24:39.25
原因わかった

最後にコードを書くFormには
protected override System.Windows.Forms.CreateParams CreateParamsで
設定してるレイヤードウインドウ周りのコードがあってもデザイナは問題なく表示するけど
その継承元になるFormに入ってると駄目だわ・・・

Formを継承して部品化するより単なる補助クラスとして部品化するほうが無難そうだな

206:デフォルトの名無しさん
12/08/11 01:34:21.30
やっとしっくり行った
>>177
URLリンク(www.dotup.org)

207:デフォルトの名無しさん
12/08/11 08:22:43.30
>>195
<meta http-equiv="refresh" content="0;url=help.html#hoge">
と書いたhelp_hoge.htmlを開けばいい

208:デフォルトの名無しさん
12/08/11 13:28:52.58
リダイレクトか
いい発想だ

209:デフォルトの名無しさん
12/08/11 13:31:37.08
>>190 >>206
透過用のBitmapに表示させたいものを書かないとダメなんですね。
新ロジックの関数見ましたが、ああやるんですね。Invalidate()もUpdate()もいらなかったとは・・・(´・ω
非常に参考になりました、ありがとうございました。 精進します。。

210:195
12/08/11 18:28:22.71
>>204
結果はNGてしたが、
URLエンコードの観点は忘れていました。
ありがとうございます。

>>207
IE、chrome、FFで確認できました。
ありがとうございます。
色々な方向から課題を見るのは
難しいです。
勉強になります。


211:デフォルトの名無しさん
12/08/11 22:58:26.68
URLリンク(msdn.microsoft.com)
.Net framework 4からVectorが使えるみたいなんですが、
Pointみたいに気軽に使えると思ったのに、ダメでした。

URLリンク(nutsu.com)
このページみたいに、2つの円の交点をVectorを使って
求めてみようと考えたのですが。

212:デフォルトの名無しさん
12/08/11 23:21:29.28
何を言ってるのか分からん
そのまま使えるぞ?
System.Drawing.Point使ったりしてるのか?
ならそっちじゃなくてSystem.Windows.Point使う

213:デフォルトの名無しさん
12/08/11 23:24:37.19
そのコードの機能は全部そろってるから、アセンブリの参照追加できないorしたくないって話か

214:デフォルトの名無しさん
12/08/11 23:25:34.49
ThreadクラスでJoinメソッドを呼び出して非同期処理をしているんですが
Abortじゃなくて、一時中断ってすることはできないんでしょうか?
Suspendは古いってVSに怒られます

215:デフォルトの名無しさん
12/08/11 23:30:13.58
外部から強制中断とかナンセンス
ワーカースレッドの中で適宜フラグなり何なり見て自分で実行状態を制御する

216:デフォルトの名無しさん
12/08/11 23:33:09.82
>>211
それはXAMLとあるからWPFやSL向けの話だな
Winformでも確かできたと思うがやり方が基本的に違うはず

でどっちで作ってるの?

217:214
12/08/11 23:41:43.32
>>215
なるほど。たとえばスレッド内のフラグを判別して、無限ループに突っ込ませるとかそういうことですか?

while(suspend == true)
{
 Thread.Sleep(100);
}

こういう感じですか?

218:211
12/08/12 00:21:16.49
すいません。解決しました。

WindowsBaseの参照追加と
using System.Windows;
を同時に追加したら、
それまで使っていたSizeが大量にエラーになって
パニクってしまいました。
(参照やめたり、using消したりの堂々巡り状態)

System.Drawing.Sizeにするより、
usingやめてSystem.Windows.Vectorで
書きます。

失礼しました。
レスくれた人ありがとう。

219:デフォルトの名無しさん
12/08/12 00:30:44.84
using xxx = System.Windows.Vector;と書けばエイリアスが設定できるよ
名前空間に対しても可能

220:デフォルトの名無しさん
12/08/12 02:13:16.97
>>217
スレッド側は処理があるうちは定期的にThread.Sleep(0)を実行、
やることなくなったらManualResetEvent.WaitOne(Timeout.Infinite)などを使用して待機
メイン側からThread.Interrupt()で中断、ManualResetEvent.Set()で再開

URLリンク(ideone.com)

再開もInterruptで出来るけど、正常系で例外生成のコストが発生するので
ResetEventの方を薦める

221:デフォルトの名無しさん
12/08/13 10:50:54.43
片山さつき 「韓国は竹島で日本人44人を殺害した。韓国への通貨スワップ700億ドルは即刻止めよ!」
スレリンク(poverty板)


大使償還、外交日程中止は当然、通貨スワップも凍結、冷静に経済制裁しよう!

歴史的にも国際法上も日本国有の領土である、竹島ですが、マッカーサーラインでは、
「暫定的に」韓国側だったのが、サンフランシスコ平和条約では日本側になった、その際に当時の李承晩大統領が
一方的にラインを設定して不法占拠し、1953年4月には「独島義勇守備隊」が駐屯。6月に日本の海上保安庁と
島根県が竹島を調査し、「日本島根県隠岐郡五箇村」の領土標識を立て、観光漁民6名を退去させた。この頃から、
韓国は竹島を「武装化」し、1952年から 1965年に日韓基本条約が締結されるまで、日本の漁船328隻を拿捕し、44人を死傷させたわけです。

日韓スワップ協定の凍結、輸出入に冠するなんらかの非関税障壁設定、竹島南側のメタンハイドレートを日本側も独自探査、採取へ、等の措置を淡々と、実行していくこと

片山さつき
詳細 2012年08月11日 14:00
URLリンク(blogos.com)

<参考>
>韓国による日本人抑留者は3929人、拿捕された船舶数は328隻、死傷者は44人を数えた
URLリンク(ja.wikipedia.org)


222:デフォルトの名無しさん
12/08/13 11:36:19.35
ネトウヨ王に、俺はなる!まで読んだ。

223:デフォルトの名無しさん
12/08/13 13:10:17.41
日韓スワップ協定の凍結で韓国滅亡まで読んだ

224:デフォルトの名無しさん
12/08/13 14:52:24.12
スワップ凍結と同時に韓国国債を売らないと日本も相当損を被るぜ

225:デフォルトの名無しさん
12/08/13 14:55:09.06
事前に売っとかないとなー

226:デフォルトの名無しさん
12/08/13 15:21:11.82
事前に売ったら韓国国債を保有している他の国に迷惑が掛かるだろう

227:デフォルトの名無しさん
12/08/13 16:18:58.82
ネトウヨはキチガイだな。

他で馬鹿にされすぎて、逃げてきてム板で暴れるなんて。

228:デフォルトの名無しさん
12/08/13 16:34:27.63
Abcde 12345 アイウエオ
って文字列があったとして、Abcde 12345 だけを削りたいです。文字数は変わるので固定するわけにも行かず。どうすればいいんでしょうか。
Splitを使う、というのは聞いたのですが改行してしまうだけでして…。

229:デフォルトの名無しさん
12/08/13 16:36:04.80
半角だけというのなら方法はあるよ

230:デフォルトの名無しさん
12/08/13 16:49:20.05
どういう規則なのか…
半角スペース区切りで最後の要素とか
全角を残したいとか

231:デフォルトの名無しさん
12/08/13 16:49:53.20
普通は正規表現だな
いきなり固定とか出てくるのがよく分からんが

232:デフォルトの名無しさん
12/08/13 18:33:55.59
正規表現でぶったぎればいいんですかね。
数字のところに\d\d\dとかやっても上手く反応してくれなくって。
全角より後ろを残したい、って感じですね。

233:デフォルトの名無しさん
12/08/13 18:36:28.65
いやまず仕様決めろって

決まってないのに適当になんでも作るなよ

234:デフォルトの名無しさん
12/08/13 18:39:51.88
他人にすらちゃんと説明出来ないルールを
コンピュータに伝えられるわけが無い

235:デフォルトの名無しさん
12/08/13 18:54:39.89
ごめんなさい半年ROMります

236:デフォルトの名無しさん
12/08/13 20:48:04.46
■日本政府、韓国と合意した金融協力を変更せず維持

政府は13日、これまでに韓国と合意した金融協力を変更せず、維持する方針を明らかにした。
李明博大統領が島根県・竹島に上陸したことで日韓間の緊張が高まっているが、両国経済の相互依存が
深まっていることを配慮し、国際的な合意を順守することが関係改善にも重要と判断した。

日本と韓国は緊急時にドルなど外貨を融通し合う通貨交換(スワップ)協定の大幅拡充や、
日本によるウォン建て韓国国債の購入で合意している。

昨年10月に合意したスワップ協定では、韓国への資金支援枠は
従来の5倍以上に増え、総額700億ドル(約5兆5千億円)とした。
韓国経済の安定は日本の利益にもつながるためだ。

産経ニュース
URLリンク(sankei.jp.msn.com)


237:デフォルトの名無しさん
12/08/13 20:51:13.53
ネトウヨ王に、俺はなる!まで読んだ。

238:デフォルトの名無しさん
12/08/13 21:28:15.24
仕様を伝えて欲しいのに
半年ROMるとか意味分からない

239:デフォルトの名無しさん
12/08/13 23:30:09.12
きっと本当になにもデキない人だったんだろう、また戻ってくるさ

240:デフォルトの名無しさん
12/08/14 05:59:09.01
典型的な日本の上流工程。自称SE。

241:デフォルトの名無しさん
12/08/14 08:14:06.89
趣味でかじってる程度だけど、ある程度処理の流れとかデータを受け持つクラスとかくらいは設計するんだけど
リファクタリングはまったく同じ処理をしてるところとか、いつも同じ数値なのに違う変数を使ってるところとかを一元化するくらい
最終的には完成するんだけど、そこまでがバグ+仕様変更の嵐。
それが悩みなんだけど、趣味でも最低ここまで設計しといたほうがいいよってのない?

242:デフォルトの名無しさん
12/08/14 08:33:59.77
バグを見逃して後で困らないように単体テスト書きながらやるとか
頻繁に仕様変更される所(UI関係とか)の変更が、データを受け持つクラスに波及しないように分離する設計を心がけるとか

243:デフォルトの名無しさん
12/08/14 10:18:07.21
configファイルに保存してる値って、
int i = Properties.Settings.Default.hoge 
みたいな感じでコード内でいちいち呼び出して使っていいんでしょうか?

244:デフォルトの名無しさん
12/08/14 10:23:07.97
すみません、言葉足らずでした。
コード内で変数に代入して使うのが多分一般的なんだろうとは思うんだけど
コード汚くなるの気にしなければ>>243みたいな使い方でもいいんでしょうか?

245:デフォルトの名無しさん
12/08/14 10:24:11.28
むしろそれが本来というかメインというか

243的な主用途はFormの設定のバインディング用途?

246:デフォルトの名無しさん
12/08/14 10:25:04.93
あ、あれ・・・なんか言いたいことと書いてることが支離滅裂ですね・・・
何度もすみません・・・orz

247:デフォルトの名無しさん
12/08/14 10:26:42.72
つまり
void Initialize() {
    this._name = Properties.Settings.Default._name;
}
void ShowName() {
    MessageBox.Show(this._name);
}
とするか
void ShowName() {
    MessageBox.Show(Properties.Settings.Default._name);
}
とするかってこと?

どっちでもいいよ

248:デフォルトの名無しさん
12/08/14 10:28:38.57
そんなおっかなびっくり使わなくてもwww

249:デフォルトの名無しさん
12/08/14 10:32:38.41
>>245
>>247みたいか用途です、コード書いててどっちで使うのがいいのかなって思ったので。
ありがとうございますw

250:デフォルトの名無しさん
12/08/14 10:33:24.49
独習C#でC#の基本とWebサイトでFormの基本はおさえた感じなんですが
そのレベルの人が取り組むといい事ってなんでしょうか
実践的なライブラリの使い方とかがいいかなと思ってるんですが
標準ライブラリが大きすぎてどこから手をつけていいのか……


251:デフォルトの名無しさん
12/08/14 10:34:00.44
いつものやつ
すきなのどうぞ
URLリンク(www.google.co.jp)

252:デフォルトの名無しさん
12/08/14 10:36:53.46
>>250
使わないこと覚えても無駄
使うときにその都度再確認すれば必然的に必要なことは大体覚えられる
あとは>>251でもみてろ

253:デフォルトの名無しさん
12/08/14 10:51:51.41
IOや描画は必要になったときに覚えるとしても、コレクションやLINQを先に押さえておいても損はないんじゃね

254:デフォルトの名無しさん
12/08/14 10:53:31.31
必要性を感じなければ身に付かないよ

255:デフォルトの名無しさん
12/08/14 11:37:26.83
そもそも何があるか知らないと使えないからね。
ライブラリは広く浅く。
使う時にピンポイントで深くしたらいい。

256:デフォルトの名無しさん
12/08/14 11:45:16.36
これが作れればあとはなんでも作れるってのはなんだろう
やはりシューティングゲームか。

257:デフォルトの名無しさん
12/08/14 11:49:42.96
なぜそう思う

258:デフォルトの名無しさん
12/08/14 13:26:30.01
ゲームしか知らないから

259:241
12/08/14 18:40:16.79
>>242
単体テストは名前は知ってたけど、やったことはなかった
今度からやるようにする、ありがとう!


260:デフォルトの名無しさん
12/08/15 01:21:52.30
C# ExplressでTwitterにつぶやく方法教えろください

261:デフォルトの名無しさん
12/08/15 01:24:30.40
>>260
twitter api
でぐぐれ

262:デフォルトの名無しさん
12/08/15 02:20:00.21
URLリンク(d.hatena.ne.jp)
なんだよこれわけわかんね、もっと簡単なのないの?

263:デフォルトの名無しさん
12/08/15 02:43:00.80
コード見た瞬間思考停止するようじゃ適性ないよ。
サンプルあるんだからちゃんと読め

264:デフォルトの名無しさん
12/08/15 02:46:50.10
ごめん、起きたら読むわ

265:デフォルトの名無しさん
12/08/15 03:47:20.09
秘儀 睡眠学習
夢の中では完璧なんだけれどなぁ おきた途端に忘れちゃうんだ

266:デフォルトの名無しさん
12/08/15 07:58:55.67
>>262
これ簡単だったよ
URLリンク(www28.atwiki.jp)

267:デフォルトの名無しさん
12/08/15 11:30:38.61
>>266
お、ありがとう。これなら読めそう。

268:デフォルトの名無しさん
12/08/15 11:46:17.00
OAuthはコードじゃなくて仕様から入ったほうが分かりやすいと思う

269:デフォルトの名無しさん
12/08/15 11:47:55.26
つーか2chのような古臭いアクセス方法でちまちま転送負荷浮かそうとしてるような
サイトじゃないのでwebAPIは比較的扱いやすいと思うんだよな

ちゃんと資料も公開されてるし

270:デフォルトの名無しさん
12/08/15 12:06:19.34
using System;
using System.Drawing;
using System.Windows.Forms;

class Program {
[STAThread] public static void Main() {
Application.EnableVisualStyles();
try {
Application.Run(new MyForm());
} catch(Exception e) {
Console.WriteLine(string.Format("Exception: {0}", e.Message));
}
}
}

class MyForm : Form {
protected override void OnLoad(EventArgs e) {
base.OnLoad(e);
throw new Exception("OnLoad Error");
}
}

このコードを動かしたところエラーが起こり「アプリケーションのコンポーネントで、ハンドルされていない例外が発生しました。」というメッセージが出てきました
Application.Run(new MyForm())の中でOnLoadが呼ばれているハズなので例外をハンドルしていないということはないと思うのですがなぜこのようなエラーが起こるのでしょうか?

271:デフォルトの名無しさん
12/08/15 12:15:27.66
まずexeを直接たたいてみな

272:デフォルトの名無しさん
12/08/15 12:30:12.25
よくあるのが、AnyCPUで64bit環境で動かしてて32bitのDLL読んでる場合。

273:デフォルトの名無しさん
12/08/15 12:33:38.70
その前になんでそんな気持ち悪いコード書く必要あるの?

274:デフォルトの名無しさん
12/08/15 12:38:31.21
>>271
モニタ上にexeファイル表示させて、それをハンマーでたたいたら、モニター壊れたんですが、どうしたらいいですか?

275:デフォルトの名無しさん
12/08/15 12:41:12.95
>>274
プリントアウトして叩かないとダメだよ

276:デフォルトの名無しさん
12/08/15 12:41:41.78
> Application.Run(new MyForm())の中でOnLoadが呼ばれているハズなので...

なんでそう思ったんだろう


277:デフォルトの名無しさん
12/08/15 13:02:27.91
いや呼ばれるだろ

278:デフォルトの名無しさん
12/08/15 13:07:23.71
すいません自己解決しました
細かいところは良く分からないんですがRunの中で別スレッド?が走ってるらしくて
そこで投げられた例外はApplication.ThreadExceptionイベントで補足する仕様みたいです

279:デフォルトの名無しさん
12/08/15 14:31:02.27
別スレッドではないよ
例外機構が特殊なだけ

280:デフォルトの名無しさん
12/08/15 16:40:05.14
わかる人お願いします。
DataGridViewのセルを使ってバイナリエディタのようなものを作ろうとしています。
セルに1byteずつ表示させたいのですが、フォーマット指定で16進表記ができません。
stringで指定する以外の方法はないでしょうか?

281:デフォルトの名無しさん
12/08/15 17:14:29.21
>>280
日産NV350キャラバンを新車で購入するのがベスト。

それがダメならハイエースのディーゼルで3年落ち10万キロ以内を150万で購入。

それもダメならボンゴフレンディー最終型の良いタマを70万で購入すべし。

282:デフォルトの名無しさん
12/08/15 17:15:16.00
書式をX2にしてCellParsingとかCellFormattingをハンドルすればいいんじゃないの

283:デフォルトの名無しさん
12/08/15 17:25:35.11
.net2.0、C#でListの中のオブジェクトのプロパティに、特定の数値を含むものが有ったらそのオブジェクトをコピーする、みたいなのはどうすればいいんでしょう
現在foreachでリストの中の全部のオブジェクトに対してifで比較してるんですが激しく効率が悪い気がします

284:280
12/08/15 17:37:45.46

DefaultCellStyle.Format = "X2";
でできました。"

285:デフォルトの名無しさん
12/08/15 17:42:53.22
>>283
実行効率なら大体ベストだろ
開発効率ならList<T>.FindAllとラムダ式

286:デフォルトの名無しさん
12/08/15 18:01:43.01
>>285
ええ、そうなんですか?
じゃあ2.0なんでこのままいくことにします
ありがとうございました

287:デフォルトの名無しさん
12/08/15 18:05:57.36
例外処理中にでた例外ってどう処理すればいいんですか?

288:デフォルトの名無しさん
12/08/15 18:08:16.02
データの構造など条件次第ではインデックスなんかを自分で作っておくなんてのもできるが
基本的には泥臭くやるしかないよ

289:デフォルトの名無しさん
12/08/15 18:08:49.09
うおw間に入った

>>288>>283

290:デフォルトの名無しさん
12/08/15 18:32:36.40
>>286
一発でできる便利なものがあったとしても、その中ではやっぱり同じことやるしかないからね

291:デフォルトの名無しさん
12/08/15 18:49:37.27
>>290 >>288
そうなんですか…
なんかこう高速にできる検索アルゴリズム!みたいのがあってそういうのがあるのかと思っていました

292:デフォルトの名無しさん
12/08/15 19:15:27.26
基本的に効率のよいアルゴリズムってのは、データの規則性から省略できる処理を省略して速度を出している
だから、なんらデータの情報が提示されないなら全部舐めるしかない

ソートして二分探索というのもあるかもしれないが、要素数が少ないなら線形探索した方が速い
要素数についてもあなたは提示していないよね

293:デフォルトの名無しさん
12/08/15 19:22:55.81
何度もその検索を行うならインデックス作成
一度だけなら全スキャン

294:デフォルトの名無しさん
12/08/15 19:31:03.76
何度も続けて同じキーで検索されるケースって意外に多くて
前回のキーと検索結果を覚えておくだけで大幅に速くなることもある
何にせよパフォーマンスなんか実測したり統計とったりしなきゃ何もわからん

295:デフォルトの名無しさん
12/08/15 19:40:47.14
そうそう
データ構造の解析とかできないとねえ

296:デフォルトの名無しさん
12/08/15 19:47:17.91
ええと、条件に関しては、
検索する対象は3000 ~ 数万、回数は10 ~ 1000回程度、数値はfloatです

297:デフォルトの名無しさん
12/08/15 19:54:23.65
>>296
たとえば扱うデータの分布を見て複数のリストを作ればいいんだよ

内部で今までと同じList<T>に登録する際に後に判断するデータを見て

ここからここまではList<T>AここからここまではList<T>B・・・とさ

298:デフォルトの名無しさん
12/08/15 19:59:20.74
>>297
なるほど!そういう風にやるのがインデックスなんですね!
って、見出しだから当然ですね。ありがとうございます。

299:デフォルトの名無しさん
12/08/15 20:08:04.39
つーか自分は自分がどんなデータを持ってるかも知ってるし
一度でもListを構築するときはデータを見るからねえ

以下に準備しておくかだよ

アプリ起動時などは割りと許されるけど実行時にもっさりしてると
五月蝿い人多いからねえ

300:デフォルトの名無しさん
12/08/15 20:09:56.41
floatの特定の値の検索ってあんまり想像できないんだが誤差とか大丈夫か?
ちゃんと比較時にイプシロン付けてる?
そのへん考えてない(or考えたくない)ならdecimal(場合によってはstring)に
しといた方がいいと思う

301:デフォルトの名無しさん
12/08/15 20:31:04.69
しかし4年くらい前のマシンだけど数万程度だと一瞬で終わるなw

URLリンク(ideone.com)

302:デフォルトの名無しさん
12/08/15 20:42:46.04
インスタンス生成順とインデックスが一致してるかランダムかで速度が変わりそうな気が

303:デフォルトの名無しさん
12/08/15 20:48:30.17
>>298
インデックスというかデータの範囲分割だね。
C#だとCollectionにオブジェクトの実体が格納出来ないから説明しにくいな。
DBなんかでは行データをシーケンシャルに格納しつつ、
行頭へのポインタをデータ探索に特化したインデックスに格納するよ。
代表的なのはB木インデックスとか。

304:デフォルトの名無しさん
12/08/15 20:52:21.65
やり方はいくらでもあるよ
あとは自分で好きなようにやればいい

305:デフォルトの名無しさん
12/08/15 21:02:29.27
遅いと感じてから考えればいいよ
初心者スレ的にはそんなことより>>300の問題の方がずっと重要

306:デフォルトの名無しさん
12/08/15 21:11:22.85
floatなんて書いてある?

307:デフォルトの名無しさん
12/08/15 21:14:20.45
後出しだけど書いてある。
>>306 -> >>296

308:デフォルトの名無しさん
12/08/15 21:18:24.30
うわ、読み飛ばしてたorz

309:デフォルトの名無しさん
12/08/16 08:39:49.62
ふふふ

310:デフォルトの名無しさん
12/08/16 09:49:44.37
dataGridViewを行ごとに選択するようにしているんですが、今選択されているセルの次のセルを選択状態にする方法ってないですか?
SelectNextControlメソッドかなーと思ったんですが、どうやら違うみたいで・・・

311:デフォルトの名無しさん
12/08/16 09:53:07.47
CurrentCell?

312:デフォルトの名無しさん
12/08/16 10:05:31.68
行毎に選択してるのに次のセル? 選択が行単位なのかセル単位なのか

313:デフォルトの名無しさん
12/08/16 10:10:10.36
>>310
SelectionModeがRowHeaderSelectなら
URLリンク(ideone.com)

314:デフォルトの名無しさん
12/08/16 10:56:33.50
へえ

315:310
12/08/16 11:01:18.92
すいません、行ごとに選択するようになっていて次の行を選択するようにしたいです
SelectionModeはFullRowSelectです

316:デフォルトの名無しさん
12/08/16 11:01:33.66
WindowsPhoneに興味があるんですがPC用のC#ソフトをそのままWPでも使えるんですか?

317:デフォルトの名無しさん
12/08/16 11:12:28.52
バイナリそのまんまでは使えません

318:デフォルトの名無しさん
12/08/16 11:21:32.70
>>315
FullRowSelectでも>>313で動いた

319:デフォルトの名無しさん
12/08/16 11:24:30.06
>>316
.NET Compact Frameworkなのでライブラリとかある程度異なる

320:デフォルトの名無しさん
12/08/16 13:02:09.19
ありがとうございました

321:デフォルトの名無しさん
12/08/16 14:31:27.36
いえいえ

322:デフォルトの名無しさん
12/08/16 15:44:33.48
try {
} catch (Exception e) {
MessageBox.Show(e.tostring());
}
とした場合にデバッグモードの場合はソースの行とか出てくれるんですが
リリースモードの場合は出てくれません。
リリースモードでも出てくれるようにはできないでしょうか?

323:デフォルトの名無しさん
12/08/16 15:47:18.28
そんなんでリリースなんて言えるのか

324:デフォルトの名無しさん
12/08/16 16:06:08.43
>>322
プロジェクト設定→ビルド→詳細→デバッグ情報→pdb-only
exeと同じところにpdbファイルも置いて起動

325:デフォルトの名無しさん
12/08/16 16:14:02.13
>>323
確かに。

>>324
ありがとうございます。
pdbファイルが要るんですね。
それはちょっと具合が悪いですね。

326:デフォルトの名無しさん
12/08/16 17:02:20.21
いや、リリースビルドしたらバグったなんてケースもないとは限らないので
状況によっては要るだろうさ

327:デフォルトの名無しさん
12/08/16 17:12:03.02
>>326
ビルド設定がようわからん。
ビルド設定は複数定義出来て、プリセットが2つ。
デバッグだとPDB有り、最適化無し
リリースだとPDB無し、最適化有り
ということなの?

328:デフォルトの名無しさん
12/08/16 17:29:30.70
CheckedListBoxって二回クリックしないとチェックされないですか?

329:デフォルトの名無しさん
12/08/16 17:31:04.61
すいません自己解決しました
CheckOnClickをtrueにすればいいんですね

まさか検索一発だとは思わなかった

330:デフォルトの名無しさん
12/08/16 17:36:06.10
よくあることです
書き込んだら解決とか

331:デフォルトの名無しさん
12/08/16 20:57:47.53
>>318
できました。 ありがとうございます


332:デフォルトの名無しさん
12/08/17 05:07:59.17
韓国の対外債務
URLリンク(image.space.rakuten.co.jp)
韓国の対外資産と対外債務
URLリンク(image.space.rakuten.co.jp)
韓国の対外純資産(資産-負債)
(訂正:グラフタイトルはNet External Assetsが正解)
URLリンク(image.space.rakuten.co.jp)

<日本と韓国の比較>
日韓の対外債務
URLリンク(image.space.rakuten.co.jp)
日韓の対外資産
URLリンク(image.space.rakuten.co.jp)

まとめ
日韓の対外純資産(単位:アメリカ100万ドル)
URLリンク(image.space.rakuten.co.jp)
主要国の対外純資産(単位:兆円、2010年末)
URLリンク(www.garbagenews.com)

<引用資料>
 日本国・日本銀行(中央銀行)
URLリンク(www.boj.or.jp)
 大韓民国・韓国中央銀行(Bank of korea)
URLリンク(ecos.bok.or.kr)


333:デフォルトの名無しさん
12/08/17 11:44:49.24
ネトウヨ王に、俺はなる!まで読んだ。

334:デフォルトの名無しさん
12/08/17 12:46:57.69
Invokeについて教えてください。

他スレッドからコントロールを操作する場合に
同期処理でInvokeを使用すると思うのですが、
invokeを使用するとハンドルが増えていきます。
しかし非同期処理のbeginInvokeを使用すると
ハンドルは増えません。Inokeでの処理がしたい
のですがハンドルを増やすことなく処理を行う
にはどうすればよいのでしょうか?

335:デフォルトの名無しさん
12/08/17 13:13:38.74
ハンドルって?

336:デフォルトの名無しさん
12/08/17 13:22:15.95
>>335
Windowsタスクマネージャのプロセスから見るハンドルです。


337:デフォルトの名無しさん
12/08/17 13:24:43.77
ハンドルが増えるって言われてよくわからん
その増えると観測した情報もクレ

338:デフォルトの名無しさん
12/08/17 13:25:18.27
って書いたら>>336があった・・・

339:デフォルトの名無しさん
12/08/17 13:32:25.33
>>338
ハンドルって割りと簡単に変わるはず

何かのアプリをC#のプロセス確認する機能でみようとしたら
コロコロ変わって苦労した覚えが

340:デフォルトの名無しさん
12/08/17 13:34:29.43
同期するために同期オブジェクトのハンドル増えてんだろ単に

341:デフォルトの名無しさん
12/08/17 13:43:14.51
そりゃ、他のスレッドでの処理を待つ必要あるんだから同期用のハンドル増えて当然だろ。
awaitがある今、「待つな。BeginInvoke使え」が正しい回答だと思うけども。

342:デフォルトの名無しさん
12/08/17 13:49:22.31
>>334
Invokeで呼び終わった後に
GC.Collect();
GC.WaitForPendingFinalizers();
したらハンドル数が戻ったりしない?

343:デフォルトの名無しさん
12/08/17 13:56:02.67
>>339-342

なるほど、同期用のハンドルが増えているのですね、、、
ハンドル数が数千までいってこりゃヤバイ」って思ったのですが、
みているとあるところで一気に1000切るくらいまでハンドル数が
減ったりしていました。
>>342さんの言われるようにガベージコレクションがそのとき
働いたのでしょう・・・手動でGC呼び出したら同じようになったので

344:334
12/08/17 13:57:57.15
途中で送信してしまった(汗

みなさん、ありがとうございました。
理由がわかってすっきりしました^^

これからはBeginInvokeを使うようにします^-^

345:デフォルトの名無しさん
12/08/17 16:32:32.15
VSのテキストテンプレート(T4)糞すぎ
Razorに置き換えてほしい

346:デフォルトの名無しさん
12/08/17 17:31:58.65
>>344
いえいえ

347:デフォルトの名無しさん
12/08/17 21:16:28.25
韓日中新冷戦:「南朝鮮人は出ていけ」日本に反韓ムード

日本の右翼団体が連日、在日韓国大使館の前で大規模なデモを繰り広げ、韓国ドラマ の放送計画が撤回されるなど、日本で反韓ムードが広がっている。

■右翼団体「李大統領は天皇陛下に謝れ」

「日本青年社」や「民族同盟」など日本の右翼団体は、15日午前8時ごろから、
東京・四谷の韓国大使館付近に街宣車で集結し、デモを繰り広げた。
街宣車の数は、午前中は3台にすぎなかったが、午後1時15分ごろには約20台に増え、
さらに3時ごろには、 大型バスを含め50-60台に達した。
右翼団体のメンバーらは靖国神社に参拝した後、 韓国大使館前に集結したことが分かった。
右翼団体のメンバーらは、大使館前の片側4車線の道路のうち2車線を占拠し
「李明博(イ・ミョンバク)大統領は天皇陛下に謝れ」「南朝鮮人は日本から出ていけ」などと叫んだ。
一部のメンバーは大使館に抗議文を渡そうと試みた。


URLリンク(www.chosunonline.com)

348:デフォルトの名無しさん
12/08/17 23:09:27.76
オライリーのプログラミングC#6版買ったったwwwwこれでおれも一流C#erキタコレwwww

349:デフォルトの名無しさん
12/08/17 23:12:45.05
そういうときは

一流C#erにオラも仲間イリー

っていうんだ

350:デフォルトの名無しさん
12/08/17 23:15:16.44
>>349
>>351
きぃーみーは だーれーとー キッスをーすーるぅー
  / ̄\                    / ̄\
  |/ ̄ ̄ ̄ ̄\           / ̄ ̄ ̄ ̄\|
 |   /V\\\         |  /V\\\
  | / /||  || |          | //|   || |
  | | |(゚)   (゚)| |          | | (゚)   (゚) /|
 ノ\|\| (_●_) |/          \| (_●_) |/|/\ わぁーたーし そーれーとーもー
 彡、   |∪|  、` ̄ ̄ヽ    /彡、   |∪|  ミ  \
/ __ ヽノ   Y ̄) |    ( (/    ヽノ_ |\_>
(___)      Y_ノ    ヽ/     (___ノ
     \      |       |      /
      |  /\ \     / /\  |
      | /   ) )     ( (    ヽ |
      ∪   ( \    / )    ∪
           \_)  (_/

       / ̄ ̄ ̄ ̄\
      /;;::       ::;ヽ
      |;;:: ィ●ァ  ィ●ァ::;;|
      |;;::        ::;;|<俺?
      |;;::   c{ っ   :;;|
        |;;::   __ノ   ::;;;|
       ヽ;;::  ー  ::;;/
        \;;::  ::;;/
          |;;::  ::;;|
          |;;::  ::;;|
   / ̄ ̄ ̄       ̄ ̄ ̄\
   |;;::              ::;;|
   |;;::              ::;;|

351:デフォルトの名無しさん
12/08/18 00:38:20.60
韓国最大手の釜山貯蓄銀行が破産。自己資本比率は驚異の-50.29%
スレリンク(poverty板)


釜山(プサン)地方裁判所は16日、債務超過に陥った釜山貯蓄銀行に対し、破産を宣告しました。

釜山貯蓄銀行は去年2月17日に営業停止処分を受けたのに続き、去年4月29日には、BIS=国際決済銀行による
自己資本比率がマイナス50.29%と、健全性を示す基準の1%を大幅に下回っていたため、
不健全金融機関に指定されました。

当時、釜山貯蓄銀行の資産総額は1兆3000億ウォン、借金は3兆5000億ウォンで、
資本金の増額や第三者による買収など経営改善の可能性も低いことから、
管財人が清算に向けて破産を申請していました。
5000万ウォン以下の預金資産や優良資産などはすでにブリッジバンクのイェソル貯蓄銀行に引き継がれており、
破産宣告により、釜山貯蓄銀行に5000万ウォンを超える預金を預けている
預金者と後順位の債権者は、破産手続きによる配当を受けることになりますが、
残った資産を処分しても、配当として受け取る資金はほとんどないものとみられます。
ただ、5000万ウォン未満の預金者は、今後もイェソル貯蓄銀行の管理のもとで、金融取り引きを続けることができます。
これに先立ち、今月14日には第一(チェイル)、第一2、プライム相互貯蓄銀行が
ソウル中央地方裁判所に破産申請を行っており、
トマト貯蓄銀行とパランセ貯蓄銀行もすでに先月、裁判所に破産を申請しています。
URLリンク(world.kbs.co.kr)

352:デフォルトの名無しさん
12/08/18 00:44:59.70
ネトウヨ王に、俺はなる!まで読んだ。

353:デフォルトの名無しさん
12/08/18 12:15:39.58
移植性を考えて書くときってどんなことに気をつければいいんですか?
ただ単にWinAPIを使わなければ問題ないんでしょうか?


354:デフォルトの名無しさん
12/08/18 12:26:10.25
それはmono移植ってこと?

355:デフォルトの名無しさん
12/08/18 12:28:42.56
>>354
実行環境はwindows以外だとmonoしか知らないんでたぶんそうです

356:デフォルトの名無しさん
12/08/18 12:35:00.68
WPFとかShif-JIS絡みかねえ
最新版ではここら辺も解消されたのかも知れんけど

357:デフォルトの名無しさん
12/08/18 17:28:12.91
MonoはクロスプラットフォームなGUI(Javaみたいなの)について非常に懐疑的で、
GUIについては共通化なんて考えないで、WindowsならWinFormsかWPFかMetro、
LinuxならGTK#、AndroidやiPhoneについてもそれぞれ専用のライブラリを使うというように
共通化は考えないでプラットフォームごとに別々に実装することを強く推奨してる。
それに従うなら、GUIとそれ以外の共通化できる部分(いわゆるビューとモデル)をしっかり分離するのが大切。

358:デフォルトの名無しさん
12/08/18 18:29:46.88
LinuxなんてXの中ですら互換性いい加減だし

359:デフォルトの名無しさん
12/08/18 18:33:31.45
ふーん
ブラウザアプリみたいなだれがどのブラウザでみてもインターフェースも機能も共通なアプリが大躍進してるのにのんきなもんだね

360:デフォルトの名無しさん
12/08/18 18:35:31.10
>>359がHTML5+CSS3のカオスさを知らないのは分かった

361:デフォルトの名無しさん
12/08/18 18:38:05.16
ベンダープレフィックス埋めてくれるjQueryちゃんちゅっちゅ

362:デフォルトの名無しさん
12/08/18 18:39:37.92
>>359
ブラウザベースと比べた時のネイティブアプリ(Webじゃないってこと)の強みは?
と考えるとそれはやっぱりクライアントの機能・能力を最大限に使えることなのだから
中途半端に最大公約数的なもの作るよりもプラットフォームべったりの方が良い
ちなみにMonoで最も重視されてるのはサーバーでASP.NETを動かすことなんだぞ
金を集めるためにモバイルもやってるけどね

363:デフォルトの名無しさん
12/08/18 18:41:16.76
その割にはどこ見ても「(ブラウザ名)(バージョン番号)で動作を確認しています」の文字が並んでるものだ
もっと自信持てよ
互換性あるんだろ?ん?

364:デフォルトの名無しさん
12/08/18 18:50:26.27
Webワールドって反MS気取りの奴が多いけど
今jQueryを開発してるのほとんどMSの社員なんだよなw

365:デフォルトの名無しさん
12/08/18 18:51:17.92
>>362
何も解ってないんだな
プラットフォーム固有の機能をつかえてもそれがアプリの実現したい機能でなければ意味ない
そしてマルチプラットフォームのアプリとはアプリの実現したい機能を想定するあらゆるプラットフォームで実現している
だからもうそれ以上にプラットフォーム固有の機能など必要ないんだ
もちろんわざわざ個別機能を利用して「この環境限定!○○機能追加!」というオナニーは可能だ
だがそんな環境固有の追加機能は本質を見失った蛇足機能にしかならない

366:デフォルトの名無しさん
12/08/18 18:57:35.23
GUIはどうせプラットフォームごとに調整しなきゃいけないんだから
共通にしてもあんまり意味ないって考えなんだろ
無理な共通化に手間を費やすよりは最初から別に作っちゃった方が早いと

367:デフォルトの名無しさん
12/08/18 19:01:18.56
>>364
ieが糞だから罪滅ぼしだろ
まだまだ足りないがな

368:デフォルトの名無しさん
12/08/18 20:50:56.80
>>365
◯◯機能の利用がオナニーとは限らないじゃん。
柔軟に考えないと。

369:デフォルトの名無しさん
12/08/19 00:11:09.99
>>359
うかつに「HTML5ならマルチプラットフォームなので安心です」なんて言ってプロジェクト立てたら、コスト跳ね上がって死ぬぞ!
標準ってなんだろうとか、マルチプラットフォームってなんだろうって悩みだすまである。

370:デフォルトの名無しさん
12/08/19 00:15:10.36
そのレベルの奴はもう相当痛い目に会ってるだろうよ。
>>359 は、実務に就いたこと無い奴だろ。

371:デフォルトの名無しさん
12/08/19 18:11:45.82
URLリンク(ou812.web.fc2.com)
このページのMatrix(行列演算)クラスを使っているのですが、
Matrixのインスタンスをそれぞれmat1,mat2,mat3として、演算子のオーバーロードを利用しようとして
mat3 = mat1 * mat2 と、乗算した結果を新しくmat3に代入という計算をしたいのですが、
おそらく = まではオーバーロード出来ないせいかこの計算ができません。
この場合はma1 *= mat2 という風にmat1に上書きするしかないのでしょうか?
mat1、mat2の値を変更せずに計算結果を代入させる方法はあるのでしょうか?


372:デフォルトの名無しさん
12/08/19 18:14:18.06
その原因は多分見当はずれ

373:デフォルトの名無しさん
12/08/19 18:15:44.22
標準のクラスかと思ったらどこぞの自作クラスの話か
これは使ってみた?
URLリンク(msdn.microsoft.com)

374:デフォルトの名無しさん
12/08/19 18:23:06.75
>>371
実際にやってみたんだよね?
どんなエラーが出た?

375:デフォルトの名無しさん
12/08/19 19:26:45.14
どうやらforで回した時にインデックスが範囲外にはずれていたようです
訂正したら無事計算できました
どうもありがとうございました

376:デフォルトの名無しさん
12/08/19 22:26:12.08
>>370
レスでもイラっとするのにリアルで使われた日には心の中で死ねと呟きそう・・・

377:デフォルトの名無しさん
12/08/19 23:12:25.95
Windowsの警告音(あの嫌な音)を音だけ出すにはどうすればいいですか
タスクトレイに常駐させてランダムにならしたいんですけど

378:デフォルトの名無しさん
12/08/19 23:16:51.64
どんな嫌がらせだよw
System.Media.SystemSoundsに最低限は入ってる

379:デフォルトの名無しさん
12/08/19 23:53:24.27
ひっでぇ嫌がらせだなおい
定期的でよければwhileであーしてThread.Sleep使えばいいと思う

380:デフォルトの名無しさん
12/08/20 00:18:08.47
スタートアップやサービスやタスクスケジューラに登録したり
プロセスを複数起動して監視しあって一つ強制終了されたら二つ復活するようにしたり
PC内にあるサウンドファイルをすべて警告音に置き換えたりするともっといいと思う

381:デフォルトの名無しさん
12/08/20 00:20:44.70
どうもありがとうございます
弟のPCに仕込む日がいまから楽しみです

382:デフォルトの名無しさん
12/08/20 00:48:49.94
見てますよ(´-`).。oO(CPUクーラのファンにゼムクリップさしてやるっ

383:デフォルトの名無しさん
12/08/20 01:37:26.78
ブラウザのリンクをクリックした時、極たまに鳴らすのはどうだろうか。

384:デフォルトの名無しさん
12/08/20 01:44:30.42
この際3.11以降聞きまくった地震の警告音を鳴らしてみてはどうだろうか

385:デフォルトの名無しさん
12/08/20 10:06:47.87
ひでぇなww

386:デフォルトの名無しさん
12/08/20 10:17:21.55
和んだ

387:デフォルトの名無しさん
12/08/20 15:04:57.41
<韓国の身の程>

次期主力戦車K2エンジンの開発まとめ 1/2

・・・2005年、韓国は開発テスト用としてドイツから買ったパワーパック数基を元に、
突然ドイツのパワーパックをパクルと宣言をする。
その流れで、韓国が100基単位で買う予定だったドイツ製パワーパックを突然キャンセル
・・・ドイツ側は唖然&抗議
パクリの担当は、エンジンは斗山インフラコア&韓国防科研共同開発、
変速機は韓S&T大宇社・韓国防科研共同開発
以後4年間、ドイツの再三に渡る抗議は笑って黙殺、ロイヤリティ交渉にも応じない。

2009年・・・韓国念願のパクリエンジン完成、K2の評価試験開始
しかしエンジンが早速壊れる、ウリナラコピー修理不可能、修理代案も出ず、
この解決の為にドイツまで「何故パクリが上手く行かないのか?」っと上から目線で聞きに行く(マジ
ドイツ憤怒!追い返される・・・・・・だが何回も聞きに行く、でもダメ
しょうがないので、今度はドイツからエンジンを買うのを条件に技術移転を引き出す交渉に行く、
交渉は出来た様だが、韓国に手痛く裏切られたドイツ側の最終回答はノー
韓国はドイツからエンジンも売って貰えず、技術移転も無い。

同2009年・・・しょうがないので、ドイツエンジンにパクった変速機を付け
K2評価テストを続行、2010年に評価試験をとりあえず終わらせる。
だが、パクッた変速機も故障・・・・・・故障原因は数ヶ月経っても不明
当然この間もパクりエンジンの不調の原因を調べ続けるも、原因不明


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