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

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

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

全過去ログを検索

<< 0 >>
■18748  Re[1]: VB.NET⇒C++で作成されたCOMのインターフェイス
□投稿者/ Azulean -(2008/05/15(Thu) 23:29:44)
    > VB.NET⇒C++で作成されたCOMのインターフェイス定義について教えてください。
    C++で作られたCOMのインターフェースをVB.NETで取り込みたいといったことでしょうか。

    参照設定の追加のCOMのタブに対象のCOMが表示されていれば、それを選択・追加することでラッパーDLLが自動生成されますよ。

    また、一覧に表示されていなくても、tlbファイルがあれば、それを参照設定から追加することでも可能でしょう。
    (もしくはDLL自体にtlbファイルが埋め込まれていることもある)
記事No.18712 のレス /過去ログ36より / 関連記事表示
削除チェック/

■22479  Re[3]: ファイルのプレビューを表示
□投稿者/ kei -(2008/07/24(Thu) 10:09:44)
    魔界の仮面弁士さん

    何やら凄そうなサンプルですね(^^;
    ちょっと見てみます。
    返信どうも有難うございました。


    くだんさん
    渋木宏明(ひどり)さん

    WebBrowserコントロールを使うと、フォーム上でファイルが開かれた感じ(?)になりました。
    (アプリケーションのツールバーなども表示されている)

    出来れば、ファイルを開かずにプレビューとして表示
    (エクスプローラの[縮小版]で表示するようなイメージ)したかったので、
    もう少し調べてみます。
    返信どうも有難うございました。
記事No.22447 のレス /過去ログ42より / 関連記事表示
削除チェック/

■54069  クリスタルレポートの計算について
□投稿者/ ちょこ -(2010/10/04(Mon) 16:47:53)

    分類:[VB.NET/VB2005 以降] 

    始めまして。ちょこと申します。

    VB.NET 2008でクリスタルレポートを使用して帳票の作成をしています。
    そこで今つまずいている所があるのですが、
    もしよろしければお力添えをいただきたいです。

    ― ― ― ― ― ―
    グループA …
         合計 00:20:00

    グループB …
           …
    合計 01:30:00
    ― ― ― ― ― ―
    総計 01:50:00

    このようにグループごとの合計とグループ全体の総計を出したいのですが、
    合計値はDateTime型のフィールドの値を出力したいと思っています。
    Decimal型の計算は以前やったことがあるのですが、DateTime型の場合で式フィールドに記述すると
    "ここには数値フィールドまたは金額フィールドが必要です"とエラーになります。

    このような場合どのようなやり方であれば合計と総計が求められるでしょうか?
    わかる方がいらっしゃれば、是非ご教授よろしくお願いいたします。
親記事 /過去ログ90より / 関連記事表示
削除チェック/

■85041  Re[2]: C# MVC でのスタックオーバーフロー
□投稿者/ はな -(2017/09/06(Wed) 17:22:58)
    これは失礼しました。

    開発環境はVisualStudio 2013です。
    運用・・・とうか今はデバッグ実行で確認しています。

    IISに乗せてもスタックオーバーフローは解決しません。
    .NET Framework 4.0です。

    ASP.NET MVC で作成しています。


    コンソールアプリケーションはDLLの動作確認用にテスト的に作成したものです。



    No85040 (WebSurfer さん) に返信
    > ■No85038 (はな さん) に返信
    >>C# MVCから参照するDLLでスタックオーバーフローが発生して困っています。
    >
    > 何を作っているのですか? ASP.NET MVC アプリ?
    >
    > あと、開発環境・運用環境が不明です。
    >
    > 他にも不明点が多々ありますが、それら 2 つは質問するときに最低限書くべきことなのですが・・・
    >
    >
記事No.85038 のレス /過去ログ145より / 関連記事表示
削除チェック/

■86178  DateTimePickerでのクリックイベント
□投稿者/ ちょこじー -(2017/12/22(Fri) 18:24:52)

    分類:[.NET 全般] 

    DateTimePickerをクリックした時に、
    最大日時に現在日時を設定したいのですが
    Private Sub DateTimePicker1_Click(sender As Object, e As EventArgs) Handles DateTimePicker1.MouseClick

    DateTimePicker1.MaxDate = Now

    End Sub



    Private Sub DateTimePicker1_Click(sender As Object, e As EventArgs) Handles DateTimePicker1.Click

    DateTimePicker1.MaxDate = Now

    End Sub

    とやっても設定されません。

    どうすればクリックイベントを拾えますか?
     



親記事 /過去ログ147より / 関連記事表示
削除チェック/

■86179  Re[1]: DateTimePickerでのクリックイベント
□投稿者/ WebSurfer -(2017/12/22(Fri) 19:17:06)
    No86178 (ちょこじー さん) に返信

    何を作っているのかと(Windows Forms? ASP.NET Web Forms? WPF? その他?)、あなたの
    開発環境ぐらいは書きませんか?
記事No.86178 のレス /過去ログ147より / 関連記事表示
削除チェック/

■86180  Re[2]: DateTimePickerでのクリックイベント
□投稿者/ ちょこじー -(2017/12/22(Fri) 19:27:25)
    No86179 (WebSurfer さん) に返信
    > ■No86178 (ちょこじー さん) に返信
    >
    VB.NET2015で
    Windows Formsを作っています
    よろしくお願いいたします。
記事No.86178 のレス /過去ログ147より / 関連記事表示
削除チェック/

■86181  Re[3]: DateTimePickerでのクリックイベント
□投稿者/ WebSurfer -(2017/12/22(Fri) 20:22:44)
    No86180 (ちょこじー さん) に返信
    
    Click イベントに代えて Enter イベントを利用してはいかがですか?
    
    namespace WindowsFormsApplication1
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
    
                this.dateTimePicker1.Enter += DateTimePicker1_Enter;
            }
    
            private void DateTimePicker1_Enter(object sender, EventArgs e)
            {
                ((DateTimePicker)sender).MaxDate = DateTime.Now;
            }
            // ・・・中略・・・
        }
    }
記事No.86178 のレス /過去ログ147より / 関連記事表示
削除チェック/

■86182  Re[4]: DateTimePickerでのクリックイベント
□投稿者/ ちょこじー -(2017/12/22(Fri) 21:48:07)
    ありがとうございます。

    Enterコマンドでうまくいきました。

    ちなみに
    this.dateTimePicker1.Enter += DateTimePicker1_Enter;
    というのは何をやっているのでしょうか?

    DateTimePicker1_Enter
    の変数には何が入っていますか?
     
記事No.86178 のレス /過去ログ147より / 関連記事表示
削除チェック/

■86183  Re[5]: DateTimePickerでのクリックイベント
□投稿者/ WebSurfer -(2017/12/22(Fri) 22:16:11)
    No86182 (ちょこじー さん) に返信

    > this.dateTimePicker1.Enter += DateTimePicker1_Enter;
    > というのは何をやっているのでしょうか?

    dateTimePicker1 の Enter イベントに、イベントハンドラ DateTimePicker1_Enter を
    アタッチしています。

    VB.NET では以下のようになるかと思います。(自信なし)

    AddHandler Me.dateTimePicker1.Enter, AddressOf DateTimePicker1_Enter


    > DateTimePicker1_Enter の変数には何が入っていますか?

    変数というよりはメソッド(イベントハンドラ)のアドレスです。

    イベントについて、その概略説明は以下の記事を見てください。

    イベントハンドラ
    http://surferonwww.info/BlogEngine/post/2012/07/02/declaration-of-event-and-handler.aspx

    VB.NET で説明しろと言うことであれば、別に新たにスレッドを立てて聞いてください。
記事No.86178 のレス /過去ログ147より / 関連記事表示
削除チェック/

■86184  Re[6]: DateTimePickerでのクリックイベント
□投稿者/ ちょこじー -(2017/12/22(Fri) 22:30:03)
    No86183 (WebSurfer さん) に返信

    ありがとうございます。
    なぜか分かりませんが、
    AddHandler Me.dateTimePicker1.Enter, AddressOf DateTimePicker1_Enter

    というようなものを書かずとも
    enterイベントからクリックイベント拾うことができました。

    そもそもクリックイベントが使えないのはなぜなのでしょうか?
     
記事No.86178 のレス /過去ログ147より / 関連記事表示
削除チェック/

■86185  Re[7]: DateTimePickerでのクリックイベント
□投稿者/ WebSurfer -(2017/12/22(Fri) 22:58:47)
    No86184 (ちょこじー さん) に返信

    > なぜか分かりませんが、
    > AddHandler Me.dateTimePicker1.Enter, AddressOf DateTimePicker1_Enter
    >
    > というようなものを書かずとも
    > enterイベントからクリックイベント拾うことができました。

    それは質問者さんがどういうコードを書いているか知る由もない自分には分かりませんが、
    少なくとも何らかの手段でハンドラをアタッチしなければ何ともならないのは確かです。

    .Designer.vb 内でアタッチしているか、ハンドラの Handles DateTimePicker1.Enter と
    かでやっているのでは?

    > そもそもクリックイベントが使えないのはなぜなのでしょうか?

    それは調べてませんので不明です。プロパティウィンドウには表示されない=使えない
    と思って最初から考えてませんでした。
記事No.86178 のレス /過去ログ147より / 関連記事表示
削除チェック/

■86186  Re[8]: DateTimePickerでのクリックイベント
□投稿者/ ちょこじー -(2017/12/22(Fri) 23:08:05)
    No86185 (WebSurfer さん) に返信


    自分では明示的にアタッチ文を書いていないので、デフォルトの設定で入っていたのでしょうか・・・?

    確かにプロパティウインドウにクリックイベントは表示されていませんが、
    それはテキストボックスなどでは表示されていないにも拘わらず
    普通に使うことができます。
    何を根拠にクリックイベントを使えるかどうか判断すれば良いですか?
     
記事No.86178 のレス /過去ログ147より / 関連記事表示
削除チェック/

■86189  Re[9]: DateTimePickerでのクリックイベント
□投稿者/ Hongliang -(2017/12/22(Fri) 23:41:54)
    DateTimePickerは複合コントロールです。ユーザーコントロールみたいなもの。
    なので、マウス操作はその内部のコントロールの方で処理されて、DateTimePicker自身は処理しないのでしょう。

    > 何を根拠にクリックイベントを使えるかどうか判断すれば良いですか?
    https://msdn.microsoft.com/ja-jp/library/system.windows.forms.datetimepicker.click.aspx
    プログラムからは使うな、と書かれてますね。

    // マウスクリックで最大値設定だと、TABキーでフォーカス移動して数字キーとかで設定、って操作した時に困るのでは。
記事No.86178 のレス /過去ログ147より / 関連記事表示
削除チェック/

■86187  Re[9]: DateTimePickerでのクリックイベント
□投稿者/ WebSurfer -(2017/12/22(Fri) 23:30:04)
    No86186 (ちょこじー さん) に返信

    > 自分では明示的にアタッチ文を書いていないので、デフォルトの設定で入っていたのでしょうか・・・?

    少なくとも C# ではそんなことはないです。VB.NET では分かりません。

    > 確かにプロパティウインドウにクリックイベントは表示されていませんが、
    > それはテキストボックスなどでは表示されていないにも拘わらず
    > 普通に使うことができます。

    テキストボックスとは TextBox コントロールですよね? であれば、自分の環境ではプロパティ
    ウィンドウに Click イベントは表示されてます。DateTimePicker にはありません。

    すみませんが、今日はもう店じまいさせてください。
記事No.86178 のレス /過去ログ147より / 関連記事表示
削除チェック/

■86188  Re[10]: DateTimePickerでのクリックイベント
□投稿者/ ちょこじー -(2017/12/22(Fri) 23:34:40)
    No86187 (WebSurfer さん) に返信

    ありがとうございます。

    VBとC#でそれほど違いはあるとは思えないのですが
    Visual Studioは2017をお使いでしょうか?

記事No.86178 のレス /過去ログ147より / 関連記事表示
削除チェック/

■86193  Re[11]: DateTimePickerでのクリックイベント
□投稿者/ WebSurfer -(2017/12/23(Sat) 10:37:32)
    No86188 (ちょこじー さん) に返信

    > VBとC#でそれほど違いはあるとは思えないのですが

    DateTimePicker で Click イベントが使えない理由は Hongliang さんに No86189 で、
    C# と VB.NET のイベントハンドラ設定の違いについては魔界の仮面弁士さんに No86192
    説明していただけたのでそちらを見ていただくとして、

    > Visual Studioは2017をお使いでしょうか?

    Visual Studio Community 2015 Update 3 です。

    今回のような DateTimePicker など特定のコントロールの限った話の場合、違いが出るとす
    ると、C# or VB.NET の違いと .NET のバージョンの違いが可能性が高いと思います。

    テンプレートを使ってプロジェクト(ASP.NET Web アプリとかの)を作る場合は、Visual
    Studio のバージョンの違いも大きな影響がありますが・・・
記事No.86178 のレス /過去ログ147より / 関連記事表示
削除チェック/

■86192  Re[9]: DateTimePickerでのクリックイベント
□投稿者/ 魔界の仮面弁士 -(2017/12/23(Sat) 08:55:45)
    2017/12/23(Sat) 14:25:13 編集(投稿者)

    No86186 (ちょこじー さん) に返信
    > 自分では明示的にアタッチ文を書いていないので、デフォルトの設定で入っていたのでしょうか・・・?

    DateTimePicker1_Enter などといったイベントハンドラーをアタッチする場合、
    C# の場合はオブジェクトに対してイベントハンドラを += で割り当てる言語仕様ですが、
    VB の場合は逆で、イベントハンドラに対してオブジェクトを割り当てる言語仕様です。


    具体的には、Visual Basic の場合

      Private Sub DateTimePicker1_Enter(sender As Object, _
         e As EventArgs) Handles DateTimePicker1.Enter

    のように、末尾に『Handles 対象オブジェクト.イベント名』の宣言があり、
    これによってイベントのアタッチが行われるということです。

    この Handles 句による割り当ては、Visual Studio によって自動的に行われます。


    また、たとえばこれを、『Handles DateTimePicker1.Enter, DateTimePicker2.Enter』とすれば
    DatePicker1 と DatePicker2 の両方のイベントを一か所にまとめることさえできます。

    引数の型に互換性があれば、異なる種類のコントロールやイベントをまとめることもできますので
     Sub Hoge(sender As Object, e As EventArgs) Handles Button1.Click, TextBox1.TextChanged
    などといったことさえ可能です。


    もし、イベント処理を使う必要がなくなった場合は、この Sub 〜 End Sub の処理を
    Handles 句も含めて丸ごと削除すれば、イベントの割り当ても自動解除されます。


    これが C# だと、割り当てや解除を += や -= という演算子で行う言語仕様になっています。
    フォームデザイナーからだと、Form1.Desinger.cs ファイル内に自動的に
      DateTimePicker1.Enter += DateTimePicker1_Enter;
    に相当するコードが記載されることになります。
    左辺の「オブジェクト.イベント」に対して、右辺の「イベントハンドラ」が割り当てられます。


    それゆえ C# の場合、void DateTimePicker1_Enter(…) の処理が不要になったからと言って、
    不要になったイベントハンドラを不用意に削除してしまうと、.Designer.cs 側での
    アタッチコードが残ってしまい、「DateTimePicker1_Enter が見つからない!」ということで
    不整合を起こしてエラーになってしまうのですが、VB ではその心配が無いですね。


    ちなみに VB で Handles 句を使うためには、その変数が
      Friend WithEvents DateTimePicker1 As DateTimePicker
    のように、「WithEvents 句」付きで宣言されている必要があるのですが、
    フォームにコントロールを張り付けた場合、自動的に WithEvents 句付きの宣言が
    Form1.Desinger.vb ファイル内に自動生成されるので、普段は意識する必要がありません。



    一方、WebSurfer さんが書かれた AddHandler ステートメントですが、これが必要になるのは
    イベントの割り当てをフォームデザイナーによる自動割り当てに任せることなく、
    プログラムから明示的に、アタッチ操作を行いたい場合に限定されます。
    なので、AddHandler + AddressOf が必要になるのは、やや特殊なケースですね。
    (ちなみにでデタッチは RemoveHandler ステートメントです)


    ただし、デザイン時専用プロパティである「GenerateMember プロパティ」を
    True から False に変更していた場合には、Visual Basic (の 2005 以降) は
    WithEvents + Handles による標準的な割り当ての代わりに、
    AddHandler + AddressOf による割り当てを Form1.designer.vb に記述するようになっています。
記事No.86178 のレス /過去ログ147より / 関連記事表示
削除チェック/

■86205  Re[10]: DateTimePickerでのクリックイベント
□投稿者/ ちょこじー -(2017/12/25(Mon) 13:22:43)
    皆さん、丁寧な解説ありがとうございます。

    非常に勉強になりました。
     
記事No.86178 のレス / END /過去ログ147より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -