タスクバーに表示しないようにする方法
- Windows APIでタスクバーに表示されないウィンドウを作成する方法について教えてください。
- CreateWindowEx関数のWS_EX_TOOLWINDOWを使用すると、タスクバーに表示されずにウィンドウを作成することが可能です。しかし、この方法ではタイトルバーが貧弱になってしまいます。
- C++Builderを使用して新しいTFormでウィンドウを作成すると、タスクバーに表示されずにちゃんとしたタイトルバーが付いたウィンドウを作成することができます。C++Builderではどのようにしてこれを実現しているのでしょうか?
- ベストアンサー
タスクバーに表示しないようにするには?
Windows API で教えていただきたい事があります。 メインの Window からメニューでいろいろな情報を表示する Window を子ウィンドーではなく独立したウィンドーとして作るようにしているのですが、たくさん作るとその度にタスクバーの表示が増えるのでうるさいので、メインのウィンドー以外はタスクバーに出ないようにしたいのです。 CreateWindowEx で WS_EX_TOOLWINDOW をつかうとタスクバーの表示はでないのですが、タイトルバーが貧弱になってしまいます。無理なのなら簡単にあきらめられるのですが、ボーランドのC++Builderを使って新しいTFormでウィンドーを作るとちゃんとしたタイトルバーでタスクバーは増えません。C++Builderはどうやってこういうことをやっているのでしょうか?
- moritan2
- お礼率46% (320/681)
- C・C++・C#
- 回答数1
- ありがとう数1
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
ダイアログを新たに作って、クラスを割り当て それをDoModalなどで表示すればタスクバーは出ないと思います。 BuilderのTFormってVCで言う「ダイアログベース」よね
関連するQ&A
- ウィンドウのサイズ変更について
タイトルバーがないウィンドウのサイズ変更について質問です。 タイトルバーがあるウィンドウでは、 ウィンドウの端にマウスカーソルを合わせると サイズ変更のカーソルに変わってサイズ変更が出来ますけど、 タイトルバーがないウィンドウでは出来ないのですが、 どうすればサイズ変更が出来るようになるのでしょうか? CreateWindowEx()には、 拡張ウィンドウスタイルには、 WS_EX_TOOLWINDOW | WS_EX_LAYERED | WS_EX_ACCEPTFILES ウィンドウスタイルには、 WS_POPUPWINDOW | WS_BORDER を渡しています。 開発環境 XP Visual Studio 2005 C、C++
- ベストアンサー
- C・C++・C#
- ウインドウスタイルの、WS_EX_TOPMOST
引き続きVC++2008でWindowsフォームアプリケーションを作っています。 WindowsAPIでのウインドウ製作中です。 今Form1を親とするウインドウで、CreateWindowEx内のウインドウスタイルの個所の引数にWS_EX_TOPMOSTを指定したのですが どうも最前面に表示されてくれないようです。 これは何か他にやらないといけない事があるのでしょうか? なお、CreateWindowEx関数は現在、最初の引数を WS_EX_TOOLWINDOW にして、WS_EX_TOPMOST以外のウインドウスタイルは WS_SYSMENU | WS_VSCROLL | WS_SIZEBOX がある状態です。
- ベストアンサー
- C・C++・C#
- WindowsAPIの、ウインドウの表示非表示
WindowsAPIのCreateWindowEx関数で作った 例えば第一引数が WS_EX_TOOLWINDOW|WS_EX_TOPMOST で第四引数が WS_SYSMENU | WS_VSCROLL | WS_SIZEBOX のウインドウを、何かのアクションがあったときいったん非表示にしてから、また何かのアクションがあった時に表示させるには、どのような物を使うのがベストなのでしょうか? プロシージャ内(HWNDはhw)で一例として(…?)試しに以下だけのものでやってみると long lStyle = GetWindowLong(hw, GWL_STYLE); lStyle = ~WS_VISIBLE; SetWindowLong(hw, GWL_STYLE, lStyle); 確かに非表示扱いにはなるようなのですが、これだけではスクリーンは再描画されず、再描画されるには人為的に別ウインドウを移動したりしないといけません。 おそらく「何かによって再描画させられれば」出来ると思うのですが それはどうすれば実現できるのでしょうか? また、これより もっと「こっちの方がいい」といった方法はありますでしょうか?
- ベストアンサー
- C・C++・C#
- CreateWindowEx のウィンドウスタイルが反映されないのですが・・・
CreateWindowEx のウィンドウスタイルが反映されないのですが・・・ VC++6.0 の SDK にて、ウィンドウを表示するプログラムを作成中なのですが、 スタイルが思うように反映されません。なぜなのでしょうか。 hList = CreateWindowEx( 0, WC_LISTVIEW, "", WS_CHILD | WS_VISIBLE |//猫でもわかる ~ によるうとデフォルトで必要らしい WS_EX_CLIENTEDGE | // 縁が沈んで見える境界線を持ちます。→ 持ちません WS_EX_ACCEPTFILES | // ドラッグ&ドロップを受けるとあるが、テキストをドロップしても×マーク WS_EX_RIGHTSCROLLBAR | // 右スクロールバーが出るはずなのに・・・ LVS_REPORT, // カラムのタイトル 0, 0, 0, 0, hWnd, (HMENU)LISTVW_HI_1, hInst, NULL);
- ベストアンサー
- C・C++・C#
- タスクバーをアイコンのみで表示させる
XPを使っています。 XPのタスクバーでは起動しているソフトのアイコンとタイトルバーの内容が表示されていますが、これをWindows7のようにアイコンのみで表示する方法があったら教えてください。 常駐ソフトはなるべく使わないようにしたいので、できればレジストリの変更などの方法にしたいです。 よろしくおねがいします。
- ベストアンサー
- Windows XP
- タスクバーに2つ表示される。
Windows C#で開発しております。 作ったアプリは、 最初にAというフォームを開き、A⇔B⇔C という画面遷移をします。 最初にAを表示したときは、タスクバーに1つ表示されますが、 Cを開いてBに戻ったら、タスクバーに2つ表示されてしまいます。 (添付参照) タスクバーには常に1つ表示されるようにしたいのですが、 どうすればよいでしょうか? つたない説明で恐縮ですが、どなたかご教授お願い致します。
- ベストアンサー
- その他(プログラミング・開発)
- トップレベルのEDITのスタイル
実行するとEDITが出てきて入力させるだけなのですが hWnd=CreateWindowEx( WS_EX_TOPMOST, "EDIT",NULL, WS_POPUP, point.x,point,y,300,20,NULL,NULL,hInstance,0); として親無しのEDITを作成しています 移動もサイズ変更も必要無いのですが 背景に溶け込まないように枠だけはほしいと思い WS_BORDERを付けるなどすると タイトルバーが出てきてしまいます タイトルバー無しの枠付きには出来ないのでしょうか
- ベストアンサー
- C・C++・C#
- タスクバー等の表示が消えてしまいました
インターネットで検索している間に、気がついたら画面下に有りますスタートボタンやタスクバーなど、 それと画面の上部に有りますタイトルバー、メニューバー等が表示されなくなってしまいました。 それで×の閉じるボタンもなくなり閉じることができません。 なにか変な操作をしてしまったのでしょうか? どのようにしたら、元に戻せるのでしょうか? Internet Explorer Google Windows Vista HomePremium SP1 です
- ベストアンサー
- Windows Vista
- Windows8でタスクバーを常に表示させたい
window8 を最近使い始めた者です。 以前は、windoesXPを使用していました。 インターネットを使用している最中に、タスクバーが消えてしまい困っています。 ネットで調べてみると、タスクバー上で右クリック→プロパティ で 「タスクバーをほかのウィンドウの手前に表示する」 にチェックを入れてください、と回答があるのですが、「タスクバーをほかのウィンドウの手前に表示する」の項目自体がありません。 どのようにすれば、windows8でタスクバーが常に表示されるようになるかお教え頂けますでしょうか? 使用しているPCのメーカーは、acerです。
- ベストアンサー
- Windows系OS
お礼
なるほど、ダイアログとして処理するのがいいようですね。ただし、ステータス情報は常時表示しておきたかったので、DoModal ではなく、CreateDialogでモードレスダイアログを作って目的を達成できました。C++ Builder の TForm ってモードレスダイアログだったんですね。知りませんでした。