
.NET初心者です。
スプラッシュスクリーンについてお尋ねします。スクリーンを自動で閉じるのではなく、手動で(ボタンのクリックで)閉じるようにしたいのですが、
http://msdn.microsoft.com/ja-jp/library/cc681209 …、
http://msdn.microsoft.com/ja-jp/library/system.w …によると
ScreenSprashのShowメソッドでautoCloseをFalseにすれば手動でスクリーンを閉じることが出来ると書いてあるのですが、これはApplicationEvents.vbに書き込めば良いのでしょうか?それともスクリーンにでしょうか?
また、Showメソッドの使い方も良く分かりません。
構文がPublic Sub Show(ByVal autoClose As Boolean)としてあったので、ためしに
Public Sub Show(ByVal autoClose As Boolean)
autoClose = False
End Sub
としてみました。案の定ですが動きません。
もう一つ、Closeメソッドの構文を見ると
Public Sub Close ( _
fadeoutDuration As TimeSpan _
)
と、時間制がとられているのですが、これをタイムスパンではなくボタンクリックでスクリーンを終了するようにしたいのですが、このメソッドで出来るのでしょうか?
スプラッシュスクリーンを使用することが先方の要望のため代替作戦が利かず、かつ調べても使用例が出てこなくて困ってます。あってもC言語でした。
No.3
- 回答日時:
プロジェクトのプロパティのアプリケーションタブの『スプラッシュスクリーン』に SplashScreen1を設定しているのであれば 『(なし)』に変更しましょう
アプリで自動で生成するスプラッシュと Startupイベントで表示しようとするスプラッシュがぶつかってしまってエラーになっているようですよ
No.2
- 回答日時:
どの段階で例外がスローされるのでしょう?
MyApplication_Startupの中にブレークポイントを設置してF11キーでステップ実行して原因の究明をしていただけませんか
当方では InvalidOperationException は起きておりません
また 確認は VB2005で行っております
投稿する際には開発環境の状況 VS2010やVB2008などの情報もあるいいと思いますよ
この回答への補足
開発環境はVB2010です。
ステップ実行での原因究明のしかたがいまいち良く分かっていないのでredfox63さんが求めているものがこれなのかよくわかりませんが、(もし違っていたら実行結果の読み方を教えてください)
splash.ShowDialog()
のところでエラーが起きている様子です。
先ほど気づいたのですが、プロジェクトのプロパティで、「アプリケーションイベントの表示」横にある「スプラッシュスクリーン」でSprashScreen1を選択していたため、エラーが生じていたようです。スクリーンが二重起動することになってしまったために生じたのではないか?との見解ですが・・・
スプラッシュスクリーンを「なし」に設定するとエラーは生じなくなりました。
しかしきちんと起動されて思ったのですが、redfox63さんが教えてくれた方法やコードと、スタートアップフォームのLoadイベントでShowDialogメソッドを使った場合の動きが同じように思えるのです。
これらは同一のものなのでしょうか?
No.1
- 回答日時:
お示しのURLの内容は WPFのものですが 大丈夫でしょうか?
.NETのWindowsFormアプリですと別のアプローチになりますよ
WPFのSplushScreenクラスですとイメージファイルを指定して構築となっているのでボタンの追加などが出来ないみたいですよ
WindowsFormの場合新規の項目の追加で『スプラッシュスクリーン』を追加します
このフォーム上にボタンを追加して Clickイベントに
DialogResult = DialogResult.OK
Me.Close()
を記述します
プロジェクト > 『プロジェクト名』のプロパティ > アプリケーションタブ の下部の『アプリケーションイベントの表示』をクリック
(全般)を(MyApplicationのイベント)に変更
Startupを選択
dim splash as SplashScreen1 = Global.VBEX002.SplushScreen1
slpush.ShowDialog()
と記述
SplashScreen1 = Global.VBEX002.SplushScreen1
の SplashScreen1は スプラッシュスクリーンの追加を行ったときのクラス名です
VBEX002はアプリケーションのプロジェクト名です
ご自身の環境に合わせて修正してください
うわ、すみません。WPF用だと気づいていませんでした。
教えてもらった方法を試してみたのですが、InvalidOperationException はハンドルされませんでした
というエラーが出てしまいます。
ヘルプを見たところ、Invoke メソッドというのを使うようですが、それでいいのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) マクロVBA 1シートをまとめる 閉じ方 初心者 SOS! 1 2022/06/17 14:54
- Visual Basic(VBA) 【変更】ファイルを閉じてダイアログで保存した時、更新したシートだけの処理の実行をする 5 2022/03/26 18:31
- Excel(エクセル) 2つのVBAを一緒にしたら機能しなくなりました(エクセル) 7 2022/06/02 12:41
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Excel(エクセル) エクセルVBAでオブジェクトが必要です 2 2022/09/10 16:37
- Visual Basic(VBA) エクセル VBAについて 2 2022/05/16 16:33
- Visual Basic(VBA) 標準モジュール Public mOnTime As Date Sub sample() '実行プロシ 1 2023/02/22 15:44
- Excel(エクセル) エクセル VBA実行中のApplication.ScreenUpdatingについて 3 2023/07/13 21:06
- Visual Basic(VBA) シートをコピーする下記記述でダイアログを用いた記述がわかりません?( A = Dir(ThisWor 4 2022/08/22 12:26
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・昔のあなたへのアドバイス
- ・字面がカッコいい英単語
- ・許せない心理テスト
- ・歩いた自慢大会
- ・「I love you」 をかっこよく翻訳してみてください
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・はじめての旅行はどこに行きましたか?
- ・準・究極の選択
- ・この人頭いいなと思ったエピソード
- ・「それ、メッセージ花火でわざわざ伝えること?」
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・【お題】甲子園での思い出の残し方
- ・【お題】動物のキャッチフレーズ
- ・人生で一番思い出に残ってる靴
- ・これ何て呼びますか Part2
- ・スタッフと宿泊客が全員斜め上を行くホテルのレビュー
- ・あなたが好きな本屋さんを教えてください
- ・かっこよく答えてください!!
- ・一回も披露したことのない豆知識
- ・ショボ短歌会
- ・いちばん失敗した人決定戦
- ・性格悪い人が優勝
- ・最速怪談選手権
- ・限定しりとり
- ・性格いい人が優勝
- ・これ何て呼びますか
- ・チョコミントアイス
- ・単二電池
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・ゴリラ向け動画サイト「ウホウホ動画」にありがちなこと
- ・泣きながら食べたご飯の思い出
- ・一番好きなみそ汁の具材は?
- ・人生で一番お金がなかったとき
- ・カラオケの鉄板ソング
- ・自分用のお土産
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
CloseとDisposeの違い
-
C# 超初心者です。 this.Refres...
-
どういうプログラムで組みます...
-
「ご処理進めて頂きますようお...
-
エクセルで、日付を入力すると...
-
VBA エンターキーでイベントに...
-
UMLでの例外処理
-
【Excel】特定の文字を含むセル...
-
Excelシート上のマクロを登録し...
-
複数シートのボタンに同一の動...
-
エクセルVBAで、MsgBox やInput...
-
VBAでループ内で使う変数名を可...
-
Accessでフォームから別フォー...
-
VBプログラムの終了
-
【VB】タブ切り替え時のイベント
-
メルカリのメルカードで買い物...
-
UPS警告音を止めたい
-
アクセスVBAのMe!と[ ]
-
月度は何て読みますか?
-
インタラクティブの反対語は?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
CloseとDisposeの違い
-
C# 超初心者です。 this.Refres...
-
[C#]FormクラスのShowメソッド...
-
フィールド(メンバ変数)のプリ...
-
C#のインスタンスを参照渡ししたい
-
vb.net フォームアプリケーシ...
-
VB.NET スプラッシュスクリー...
-
Objective-C,viewが動作しない
-
DLL内のイベントをハンドリング
-
C#で引数を渡して、スレッド用...
-
OCXのメソッドの引数に文字列を...
-
コールバックでイベントを使う...
-
どういうプログラムで組みます...
-
「ご処理進めて頂きますようお...
-
エクセルで、日付を入力すると...
-
Excelシート上のマクロを登録し...
-
VBAでループ内で使う変数名を可...
-
【Excel】特定の文字を含むセル...
-
「PC Helpsoft Driver Updated...
-
エクセルVBAで、MsgBox やInput...
おすすめ情報