質問: ### 前提・実現したいこと 以下のような(VisualStudio)ホバー時に現れるテキストや ![image_VisualStudio](https://teratail.storage.googleapis.com/uploads/contributed_images/b7fd4eb04a456b91f5a7f584e2ba1db3.png) 次のIllustratorのWM_LBUTTONDOWN時に現れるテキスト ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/bf8d40ab482ebac66d4aa093fad382d7.png) はWinAPI的にはどのような手法で作られているのでしょうか. 1)ツールチップというものでしょうかそれとも独自でウィンドウをWS_POPUPでキーを追いながらつけているのでしょうか?(ツールチップはデザインの変更がIllustratorのような角を落としたりなど複雑なことはできないように思いますが) 2)WS_POPUPを指定したウィンドウを作ってみましたが使い道がわかりません.上記のような手法以外に使われるものなのでしょうか? ご意見お願いします. ### 補足情報 Windows10 Pro VisualStudio2017 Community
回答: > > 1)ツールチップというものでしょうかそれとも独自でウィンドウをWS_POPUPでキーを追いながらつけているのでしょうか?(ツールチップはデザインの変更がIllustratorのような角を落としたりなど複雑なことはできないように思いますが) > > > 標準のツールチップのカスタマイズはかなり骨が折れるので、大半のソフトは WS_POPUP スタイルを持ったウィンドウをカスタマイズしていると思ってよいと思います。ウィンドウの角を取るには CreateRoundRectRgn で角丸の矩形を作成した後、SetWindowRgn でウィンドウにリージョンを設定するとウィンドウの角が透けて描画されるようになります。この辺はサンプルも多いので検索していただけると何か見つかると思います。 > > 2)WS_POPUPを指定したウィンドウを作ってみましたが使い道がわかりません.上記のような手法以外に使われるものなのでしょうか? > > > WS_POPUP でウィンドウを作成して表示できたのであれば、タイトルバーと枠線がないウィンドウが表示されているかと思います。その時点で目標はほぼ達成されており、あとは独自の描画コードを記述していけば、提示されているポップアップのテキストを実装することができます。 なお、WS_POPUP スタイルのみを指定した場合、幅と高さに CW_USEDEFAULT を指定してもオーバーラップウィンドウとは異なりウィンドウサイズは自動計算されません。適当な値を指定してください。