タグ

MFCに関するy-echoのブックマーク (12)

  • 半通過ウィンドウの作り方講座

    ■半通過ウィンドウの作り方講座 概要 はじめに 半通過の仕組み アルファチャネル付きpngファイル(1) アルファチャネル付きpngファイル(2) 半通過ウィンドウの上に文字を描画する ■概要 Windows 2000以降で、Visual C++ 2005を使い、ウィキペディア・タイマで使われているような半通過ウィンドウの作り方の説明をしています。 主に、次の技術が使われます。 libpng / zlib レイヤードウィンドウ UpdateLayeredWindow API (Win32) SetLayeredWindowAttributes API (Win32) さらに、UpdateLayeredWindow() 適用後のウィンドウに文字を書く試みも紹介しています。 ただし、リージョンを使ったウィンドウの形状を変える仕組み(SetWindowRgn)につい

    y-echo
    y-echo 2010/10/01
  • プログラミング講座 <Waveフォーマット編>

    第2回が来てしまいました。第1回から2年ぐらいでしょうか? 私、MFCで制御系のアプリをかかされる羽目になりその際のテクニックなどをかいときます。 MFCでスレッドを使う MFCでスレッドを使うには AfxBeginThread を利用してCWinThread型のオブジェクトを作るわけですが、通信アプリとか制御系のアプリの場合しばしば「スレッドの終了を待ちたい!」と言う要求が発生します。で、そのやり方です。 class CHogeHoge { public: CHogeHoge(); // コンストラクタ ~CHogeHoge(); // デストラクタ void Start(void); // スレッドの開始 void Stop(void); // スレッドの終了 protected: static UINT ThreadEntry(LPVOID pParam); // スレッド開始位置

  • CWinThreadによるスレッド

    CWinThreadを継承してスレッドを利用する方法。 CWinThreadの動作 CWinThreadでの実装すべき関数は以下の関数がある。 InitInstance Run ExitInstance 実行順序も上記の通り。 終了方法は、自然にスレッドが終了する当然な方法のほかに、中断させる方法もある。 今回の実装では、Run関数をオーバーライドする為、メッセージによる中断が出来ない。 そのため、メンバ変数m_bStopを用意し、さらにセッタとして、SetStop関数を用意する。 CWinThreadを継承したクラスの作成 MFCの ClassWizard を利用して、CWinThread を継承するクラスを作成します。 そして、 InitInstance、 ExitInstance、 Run 関数をそれぞれオーバーライドします。 さらに、先ほどの説明でも登場した、変数m_

  • [AKUMA NO PROGRAMING TECHNIC FOR MFC]

    へんな顔を書いたつもりでしたが、JPEG にしたときに口の部分が消えてしまいました。(T_T) ま、それはいいとして。。。 タスクトレイにアイコンを表示する/表示をやめるなど、操作するときには、 Shell_NotifyIcon() を使います。 BOOL Shell_NotifyIcon( dwMessage, pnid );

  • VC++テクニック : ポップアップメニューの表示

    ポップアップメニューを表示する 例えば、あるダイアログ上で右クリックしたときにポップアップメニューを表示する処理を行うには、次のようにする。 メニューリソースの作成 メニューリソースを作成する。ポップアップメニューの場合は、 下図のようなサブメニューが1つのポップアップメニューとして扱われる。つまりこの例では、 右クリックすると「終了(&X)」メニューだけのポップアップメニューが表示されるようになる。 ちなみに下図の「POPUP1」という文字列の部分は任意の文字列でよい。 プログラムでの記述 ClassWizardを使用し、ダイアログクラスにWM_RBUTTONDOWNメッセージのハンドラOnRButtonDown関数を定義する。 この中で、以下のようにしてポップアップメニューを呼び出す。 void CMyDialog::OnRButtonDown(UINT nFlags, CPoi

  • VC++テクニック : つくってみよう―タスクトレイアプリケーションの作成

    通常のアプリケーションは、メインウィンドウが開かれるとタスクバーに表示されます。 これをタスクバーではなく、タスクバーの右端についているタスクトレイの中へ表示させるにはどうすればいいのでしょうか? ここでは、タスクトレイに格納されるアプリケーションを、順を追って作成していきたいと思います。 その1 タスクバーに表示されないようにする 第一段階として、タスクバーにアプリケーションが表示されないようにしてみましょう。 タスクバーに何も表示されないようにするには、メインウィンドウを非表示(つまり見えなくする)にする必要があります。 しかし、メインウィンドウが見えなくてはまともに作業もできず、困ってしまいますね。 そこで、メインウィンドウの中で子ウィンドウを作成し(これは見えるようにする)、こちらをメインウィンドウの代わりに使います。 では、実際にどうすればタスクバーに表示さ

  • MFCでアプリケーションを作る

    by K.I 2009/07/10 Index 概要 作りたいアプリケーション どうやって作ろうか 結局は 作ってみよう プロジェクト作成 Dialogリソースを作る Dialogをクラス化する グローバル変数にアクセス用のポインタ設定 メインViewへの描画 ViewPort どうやってFormViewを貼り付けるの? 仕切りなおし ダイアログバーにDialogを表示 メッセージハンドラの追加 メニューからダイアログバーのON/OFF ドキュメントクラス ファイルの拡張子を設定 Serialize関数 テキストデータの読書き バイナリデータの読書き データの読み直し ビュークラス MainFrameからのアクセス MainFrameを他からアクセス Document読込み時のViewの処理 MainFrameにDialogBar更新用の関数を作る 起動時の更新 感想 自分なりのまとめ 参

    y-echo
    y-echo 2010/09/17
  • Tile, center and stretch a bitmap as your MFC dialog background

    y-echo
    y-echo 2010/09/17
  • Bitmap Backgrounds For Dialog Boxes

    y-echo
    y-echo 2010/09/16
  • Visual C++ 勉強, VC++ MFC プログラミング, Microsoft Visual C++ Tips

    VC++,MFC プログラミング関連 技術メモ、Tips等を公開しています。随時追加する予定です。 お探しの情報がない場合はお問い合わせ下さい。

    y-echo
    y-echo 2010/09/14
  • The So-Software Studio

    2013/11/23 Document - TypeScript プログラミング 公開。 2012/11/04 Document - [SL4A] WSGI 公開。 2012/03/31 Document - [ATL/WTL] WTL8.1.11324 から WTL8.1.12085 への変更点 公開。 2012/03/29 Document - [ATL/WTL] Visual Studio 2010 へ WTL をインストール 公開。 2012/02/04 Document - [SL4A] HTTP サーバ 公開。 2012/01/04 Document - [SL4A] SQLite 公開。 2011/12/04 Document - [ATL/WTL] WTL8.1.9127 から WTL8.1.11324 への変更点 公開。 2011/10/30 Document - [SL

    y-echo
    y-echo 2010/09/07
  • http://www.g-ishihara.com/mfc_ge_02.htm

    y-echo
    y-echo 2010/09/07
  • 1