C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

全過去ログを検索

<< 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 >>
■12213  Re[4]: イベントを発生させるには
□投稿者/ 阿弥陀 -(2008/01/05(Sat) 06:34:47)
    No12209 (未記入 さん) に返信
    >> private void richTextBox1_TextChanged(object sender, EventArgs e)
    >
    > 意味不明です。私は
    >
    >>> 名前どおりで SelectionChanged イベントというのがありますがどうでしょう?
    >
    > と書いています。TextChanged イベントは勧めていません。

    すみません。間違えてしまい大変失礼いたしました。深くお詫びしたいと思います。
記事No.12199 のレス / END /過去ログ26より / 関連記事表示
削除チェック/

■12217  AddHandler先からのコントロール操作
□投稿者/ ゆすけ -(2008/01/05(Sat) 10:29:32)

    分類:[VB.NET/VB2005] 

    これは三日前に別のところで投稿したんですが恐らく放置です・・・

    外部スレッドからの操作というジャンルだと思うのですがサンプルを見ても良くわかりませんでした
    下のソースでコントロール操作をするにはどのようにすればいいのでしょうか?
    よろしくお願いしますm(_ _)m

    標準モジュールで表示中のForm1.Lavelを操作しようとしています

    Public Sub コマンド実行の確認()
    DOS_KILL = 0
    Form3.GroupBox3.Visible = True
    hProcess = System.Diagnostics.Process.Start((System.AppDomain.CurrentDomain.BaseDirectory) & "\CPU monitor\Batch folder\000.bat")
    hProcess.EnableRaisingEvents = True
    AddHandler hProcess.Exited, AddressOf DOS_Exited
    End Sub

    Private Sub DOS_Exited(ByVal sender As Object, ByVal e As System.EventArgs)
    Form1.Label1.Visible = False ←これがうまくいきません
    End Sub

    環境
    VB.NET 2008 EE
    Windows XP HOME
親記事 /過去ログ26より / 関連記事表示
削除チェック/

■12218  Re[1]: AddHandler先からのコントロール操作
□投稿者/ επιστημη -(2008/01/05(Sat) 11:00:50)
>
    > Form1.Label1.Visible = False ←これがうまくいきません

    なにが/どのように"うまくいきません"なのですか?
    状況説明を端折ったら答えに窮するでしょうが。
記事No.12217 のレス /過去ログ26より / 関連記事表示
削除チェック/

■12221  Re[2]: AddHandler先からのコントロール操作
□投稿者/ ゆすけ -(2008/01/05(Sat) 12:20:18)
    No12218 (επιστημη さん) に返信
    >> Form1.Label1.Visible = False ←これがうまくいきません
    >
    > なにが/どのように"うまくいきません"なのですか?
    > 状況説明を端折ったら答えに窮するでしょうが。
    >

    すいません、説明したつもりで居ました、説明しなおします

    なにが:フォーム1ラベルが
    どのようにうまくいきません:非表示になりません

    フォーム1のラベルを非表示にさせたいので

    Private Sub DOS_Exited(ByVal sender As Object, ByVal e As System.EventArgs)
    Form1.Label1.Visible = False ←これがうまくいきません
    End Sub

    このように書いたんですが、コードが通ってるにも関わらず非表示にされません
    非表示にさせるにはどのように書き直したらいいのでしょうか?

    このコードは標準モジュールで書かれていて
    ((System.AppDomain.CurrentDomain.BaseDirectory) & "\CPU monitor\Batch folder\000.bat")
    が終了したことを感知すると「DOS_Exited」へ飛んでラベルを非表示にさせるようにしたいのです
    実際実行したところ「DOS_Exited」の「Form1.Label1.Visible = False」を通るのですが
    非表示にできていません
    エラーも発生はしません
記事No.12217 のレス /過去ログ26より / 関連記事表示
削除チェック/

■12223  Re[3]: AddHandler先からのコントロール操作
□投稿者/ ダッチ -(2008/01/05(Sat) 12:41:14)
    > Private Sub DOS_Exited(ByVal sender As Object, ByVal e As System.EventArgs)
    >     Form1.Label1.Visible = False ←これがうまくいきません
    > End Sub
    ここの Form1 は表示している Form1 と別インスタンスの Form1 かもしれません。
    VB2005 から既定のインスタンスという機能が備わっています。
    このせいでフォームのクラス名を直接書いた場合に、勝手にインスタンス化されてしまいます。
    
    どのようにして Form1 のインスタンスを生成して、表示したかが記載されていませんのでわかりませんが、
    My.Forms.Form1 の Label1 に対して非表示にすればうまくいくのではないでしょうか。
    
    うまくいかない可能性が高いので、(たぶんダメ)
    その場合は表示している Form1 のインスタンスに対して Label1 を非表示にしていください。
    
    My.Forms についてはこちらを参照してください。
        My.Forms オブジェクト
        http://msdn2.microsoft.com/ja-jp/library/87y2hdsf.aspx
    
記事No.12217 のレス /過去ログ26より / 関連記事表示
削除チェック/

■12225  Re[4]: AddHandler先からのコントロール操作
□投稿者/ ゆすけ -(2008/01/05(Sat) 14:15:29)
    No12223 (ダッチ さん) に返信
    > > Private Sub DOS_Exited(ByVal sender As Object, ByVal e As System.EventArgs)
    >> Form1.Label1.Visible = False ←これがうまくいきません
    >>End Sub
    > ここの Form1 は表示している Form1 と別インスタンスの Form1 かもしれません。
    > VB2005 から既定のインスタンスという機能が備わっています。
    > このせいでフォームのクラス名を直接書いた場合に、勝手にインスタンス化されてしまいます。
    >
    > どのようにして Form1 のインスタンスを生成して、表示したかが記載されていませんのでわかりませんが、
    > My.Forms.Form1 の Label1 に対して非表示にすればうまくいくのではないでしょうか。
    >
    > うまくいかない可能性が高いので、(たぶんダメ)
    > その場合は表示している Form1 のインスタンスに対して Label1 を非表示にしていください。
    >
    > My.Forms についてはこちらを参照してください。
    > My.Forms オブジェクト
    > http://msdn2.microsoft.com/ja-jp/library/87y2hdsf.aspx
    >
    返信ありがとうございました!
    フォームの追加方法なんですが「新しいプロジェクト」で最初に作成されるフォームを利用しています
    上の通りに「My.Forms.Form1.Label1.Visible=False」ではうまくいきませんでした
    今「インスタンス」について勉強しています、少し時間がかかりますがよろしくお願いします
記事No.12217 のレス /過去ログ26より / 関連記事表示
削除チェック/

■12226  Re[5]: AddHandler先からのコントロール操作
□投稿者/ ダッチ -(2008/01/05(Sat) 15:03:47)
    > AddHandler hProcess.Exited, AddressOf DOS_Exited
    この部分を完全に無視していました。(すみません)
    
    Exited イベントは非同期(別スレッド)で通知されるため、
    My.Forms.Form1 の Label1 に対して非表示にしても、
    意図した動きになりません。
    
    コントロールにアクセスするためには、
    そのコントロールを作成したスレッドからアクセスしなければいけない、という決まりがあります。
    今回の場合は Form1 を作成したスレッドと DOS_Exited メソッドが動作しているスレッドが別なため、
    表示されている Form1 の Label1 にアクセスできていません。
    
    コントロールを作成したスレッドからコントロールにアクセスするためには
    Control.Invoke メソッドを使用します。
    
        Control.Invoke メソッド (Delegate)
        http://msdn2.microsoft.com/ja-jp/library/zyzhdc6b.aspx
    
    次のようにすれば Label1 は非表示になると思います。
    
    モジュールのコード-------
    
    	Private uiControl  As Control
    	
    	Public Sub コマンド実行の確認(c As Control)
    	    uiControl = c
    	    DOS_KILL = 0
            Form3.GroupBox3.Visible = True
            hProcess = System.Diagnostics.Process.Start((System.AppDomain.CurrentDomain.BaseDirectory) & "\CPU monitor\Batch folder\000.bat")
            hProcess.EnableRaisingEvents = True
    	    AddHandler hProcess.Exited, AddressOf DOS_Exited
    	End Sub
    
        Private Sub DOS_Exited(ByVal sender As Object, ByVal e As System.EventArgs)
            uiControl.Invoke(New MethodInvoker(AddressOf Invokeから呼ばれるメソッド))
        End Sub
    
        Private Sub Invokeから呼ばれるメソッド()
            Form1.Label1.Visible = False
        End Sub
    
    -------
    
    Invoke メソッドを使用するためのコントロールを
    「コマンド実行の確認」関数の引数で受け取っています。
    そのコントロールの Invoke メソッドから「Invokeから呼ばれるメソッド」関数を呼んでいます。
    こうすることで「Invokeから呼ばれるメソッド」関数は
    uiControl が作成されたコントロールのスレッドから呼び出すことができます。
    
    もし、別スレッドでなければ My.Forms.Form1 で最初に表示されているフォームにアクセス可能です。
    My.Forms を付けるか付けないかは関係ありません。
    
記事No.12217 のレス /過去ログ26より / 関連記事表示
削除チェック/

■12227  Re[6]: AddHandler先からのコントロール操作
□投稿者/ ゆすけ -(2008/01/05(Sat) 15:43:41)
    >
    > Exited イベントは非同期(別スレッド)で通知されるため、
    > My.Forms.Form1 の Label1 に対して非表示にしても、
    > 意図した動きになりません。
    >
    > コントロールにアクセスするためには、
    > そのコントロールを作成したスレッドからアクセスしなければいけない、という決まりがあります。
    > 今回の場合は Form1 を作成したスレッドと DOS_Exited メソッドが動作しているスレッドが別なため、
    > 表示されている Form1 の Label1 にアクセスできていません。
    >
    > コントロールを作成したスレッドからコントロールにアクセスするためには
    > Control.Invoke メソッドを使用します。
    >
    > Control.Invoke メソッド (Delegate)
    > http://msdn2.microsoft.com/ja-jp/library/zyzhdc6b.aspx
    >
    > 次のようにすれば Label1 は非表示になると思います。
    >
    > モジュールのコード-------
    >
    > Private uiControl As Control
    >
    > Public Sub コマンド実行の確認(c As Control)
    > uiControl = c
    > DOS_KILL = 0
    > Form3.GroupBox3.Visible = True
    > hProcess = System.Diagnostics.Process.Start((System.AppDomain.CurrentDomain.BaseDirectory) & "\CPU monitor\Batch folder\000.bat")
    > hProcess.EnableRaisingEvents = True
    > AddHandler hProcess.Exited, AddressOf DOS_Exited
    > End Sub
    >
    > Private Sub DOS_Exited(ByVal sender As Object, ByVal e As System.EventArgs)
    > uiControl.Invoke(New MethodInvoker(AddressOf Invokeから呼ばれるメソッド))
    > End Sub
    >
    > Private Sub Invokeから呼ばれるメソッド()
    > Form1.Label1.Visible = False
    > End Sub
    >
    > -------
    >
    > Invoke メソッドを使用するためのコントロールを
    > 「コマンド実行の確認」関数の引数で受け取っています。
    > そのコントロールの Invoke メソッドから「Invokeから呼ばれるメソッド」関数を呼んでいます。
    > こうすることで「Invokeから呼ばれるメソッド」関数は
    > uiControl が作成されたコントロールのスレッドから呼び出すことができます。
    >
    > もし、別スレッドでなければ My.Forms.Form1 で最初に表示されているフォームにアクセス可能です。
    > My.Forms を付けるか付けないかは関係ありません。

    すいません、いままでCall~~で呼ぶことしかしなかったので「Public Sub コマンド実行の確認(c As Control)
    」の呼び方がわかりません、
    色々試しましたがダメでした、どのように呼び出すのでしょうか?
記事No.12217 のレス /過去ログ26より / 関連記事表示
削除チェック/

■12229  Re[7]: AddHandler先からのコントロール操作
□投稿者/ ダッチ -(2008/01/05(Sat) 16:16:17)
    > すいません、いままでCall~~で呼ぶことしかしなかったので「Public Sub コマンド実行の確認(c As Control)
    > 」の呼び方がわかりません、
    > 色々試しましたがダメでした、どのように呼び出すのでしょうか?
    
    引数という言葉は聞いたことはありますか。
    Process.Start メソッドに渡しているファイルパスも引数です。
    ここら辺は入門書などで勉強された方がいいと思います。
    お勧めの本などはわかりません。
    
    引数を指定した呼び方ですが () の中に引数を指定します。
    お好きな呼び出し方で呼んでください。お勧めは一番目です。
    
        Module1.コマンド実行の確認(My.Forms.Form1.Label1)
        Call コマンド実行の確認(My.Forms.Form1.Label1)
        コマンド実行の確認(My.Forms.Form1.Label1)
    
    本当に入門書などを読んで学ぶことをお勧めします。
    その方が早く確実に身に付けることが出来ると思います。
    そしてその中でわからないことがあれば、
    Web 検索するなり、質問するなりすればいいと思います。
記事No.12217 のレス /過去ログ26より / 関連記事表示
削除チェック/

■12230  Re[8]: AddHandler先からのコントロール操作
□投稿者/ ゆすけ -(2008/01/05(Sat) 16:19:03)
    > 引数という言葉は聞いたことはありますか。
    > Process.Start メソッドに渡しているファイルパスも引数です。
    > ここら辺は入門書などで勉強された方がいいと思います。
    > お勧めの本などはわかりません。
    >
    > 引数を指定した呼び方ですが () の中に引数を指定します。
    > お好きな呼び出し方で呼んでください。お勧めは一番目です。
    >
    > Module1.コマンド実行の確認(My.Forms.Form1.Label1)
    > Call コマンド実行の確認(My.Forms.Form1.Label1)
    > コマンド実行の確認(My.Forms.Form1.Label1)
    >
    > 本当に入門書などを読んで学ぶことをお勧めします。
    > その方が早く確実に身に付けることが出来ると思います。
    > そしてその中でわからないことがあれば、
    > Web 検索するなり、質問するなりすればいいと思います。

    いつも丁寧にありがとうございます
    これから大学でその進路に向かうのでそろそろ本を読むべきだと思っています
    またお世話になるかもしれませんがそのときもよろしくお願いしますm(_ _)m
記事No.12217 のレス / END /過去ログ26より / 関連記事表示
削除チェック/

■12143  今年作ってみたいプログラム
□投稿者/ オッパピイー -(2007/12/31(Mon) 18:09:11)

    分類:[雑談] 

    今年もカウントダウンに入ってきましたが、こちらの掲示板に投稿しておられる
    皆様はプログラミングの強者とお見受けしました。

    来る2008年にぜひ作ってみたいプログラム、あるいはチャレンジしたいテクニックなどを紹介していただけたらと思います。ぜひぜひお聞かせください。(^_^)/
親記事 /過去ログ26より / 関連記事表示
削除チェック/

■12145  Re[1]: 今年作ってみたいプログラム
□投稿者/ やじゅ -(2007/12/31(Mon) 18:16:49)
>
    No12143 (オッパピイー さん) に返信
    > 今年もカウントダウンに入ってきましたが、こちらの掲示板に投稿しておられる
    > 皆様はプログラミングの強者とお見受けしました。
    >
    > 来る2008年にぜひ作ってみたいプログラム、あるいはチャレンジしたいテクニックなどを紹介していただけたらと思います。ぜひぜひお聞かせください。(^_^)/

    作ってみたいのは、株ロボですね。
    余裕があれば、3D系の何か、ビーズアクセサリー用のツールとか
記事No.12143 のレス /過去ログ26より / 関連記事表示
削除チェック/

■12176  Re[2]: 今年作ってみたいプログラム
□投稿者/ も -(2008/01/02(Wed) 20:52:01)
    今年は進化型計算を使って何か作ってみたいとおもてます
    Ant Warの様な考察するときに面白いのもいいかな

    という学生の妄想
記事No.12143 のレス /過去ログ26より / 関連記事表示
削除チェック/

■12177  Re[3]: 今年作ってみたいプログラム
□投稿者/ HiJun -(2008/01/02(Wed) 21:04:09)
    こんな感じでしょうか...

    1.C#を身につけていきたい。
    2.ASP.NET(C#)へと派生していければ...
    3.あわよくば、WPFにも...
記事No.12143 のレス /過去ログ26より / 関連記事表示
削除チェック/

■12192  Re[4]: 今年作ってみたいプログラム
□投稿者/ 凪瀬 -(2008/01/04(Fri) 11:53:07)
    ネタは数あれど製作が追いつかない…。


    着手中
    ・構文解析木を用いたStepカウンタ
    ・構文解析木を用いたDiff
    ・WebDAV Servlet
    ・javadocベースの翻訳wiki

    設計済み
    ・プロジェクト管理ツール
      ・テストケース管理ツール
      ・仕様管理ツール
      ・バグトラッキングツール
      ・Subversion連携
    ・技術系の議論向けBBSシステム
      ・まとめページ生成機能
      ・ソースコードカラーリング機能
    ・JavaWebStartアップローダ

    構想中
    ・リレーショナル型オブジェクト指向言語
    ・JavaWebStart駆動のミニマムコードステップ実行ヴュワー
記事No.12143 のレス /過去ログ26より / 関連記事表示
削除チェック/

■12195  Re[5]: 今年作ってみたいプログラム
□投稿者/ PATIO -(2008/01/04(Fri) 17:25:07)
    相変わらず、VC++ネイティブの開発しかしていないので
    C#の勉強をしたいなぁと思ってますが、中々勉強する時間が取れないです。
    最近は、管理の仕事が増えてきてそっちに手間を取られるケースも多いですし。

    何とかしたいと言いながら、状況に流されているので何とかしなくては!
    毎年、言ってますけれどね。(^^;
記事No.12143 のレス /過去ログ26より / 関連記事表示
削除チェック/

■12224  Re[6]: 今年作ってみたいプログラム
□投稿者/ さかもと -(2008/01/05(Sat) 13:45:23)
>

    自動で絵を描くやつ。
記事No.12143 のレス /過去ログ26より / 関連記事表示
削除チェック/

■12233  Re[7]: 今年作ってみたいプログラム
□投稿者/ よしお -(2008/01/05(Sat) 17:48:08)
    ・一見さんの書き込みは管理者が確認するまで公開されない掲示板システム
    ・できるだけ多くの掲示板等のシステムに組み込みやすいスパム判定モジュール(設置方法や判定したコメント等を一時保留したりするマニュアル、メンテナンス付き)
    ・投稿内容を判断して質問内容を整理する人工知能
    ・内容を客観的判断するシステム

    もちろん今のうちには全部無理。
記事No.12143 のレス /過去ログ26より / 関連記事表示
削除チェック/

■12238  質問)コマンドライン引数を使った加算・減算
□投稿者/ Yosi -(2008/01/06(Sun) 00:40:18)

    分類:[C#] 

    開発環境:Microsoft Visual C# Basic 2005 Express Edition
    使用言語:C#

    初投稿です。


    //基本的なソースPart19

    using System;
    using System.IO;

    class sample19
    {
    static void Main(string[] args)
    {
    int value1;
    int value2;
    char kigou;

    value1 = Int32.Parse(args[1]);
    value2 = Int32.Parse(args[3]);
    kigou = (args[2])[0];

    int answer = 0;
    switch (kigou)
    {
    case '-':
    answer = value1 - value2;
    break;
    case '+':
    answer = value1 + value2;
    break;
    }

    Console.WriteLine("答えは"+answer+"です");


    }
    }

    というソースで

    value1 = Int32.Parse(args[1]);

    の部分で「配列の境界外」という警告が出ました。
    このソースはコマンドライン引数を使って
    整数型の変数2つと文字型の変数1つで
    それぞれ数字と+か-をいれることで計算がなされ
    計算結果がanswerに格納されて
    「答えはanswerです」と表示されればいいのですが

    value1 = Int32.Parse(args[1]);

    が原因(と思いますが)
    「プログラムを指定して実行」を起動→引数をとって
    実行したのですが一瞬だけしかコマンドラインが表示されないので
    対処法を教えてください。
    長々となりましたがヨロシクお願いします
親記事 /過去ログ26より / 関連記事表示
削除チェック/

■12239  Re[1]: 質問)コマンドライン引数を使った加算・減算
□投稿者/ いしだ -(2008/01/06(Sun) 00:52:55)
    > value1 = Int32.Parse(args[1]);
    args[0]ですね。
    その他も同様に修正してください。
記事No.12238 のレス /過去ログ26より / 関連記事表示
削除チェック/

<前の20件 | 次の20件>

<< 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 >>

ヒット件数が多いので過去ログ1〜26 までの検索結果 / 過去ログ27からさらに検索→

パスワード/

- Child Tree -