mfc-ml

2003年06月

30

[mfc 45264] Re: スクリーンセーバが起動中かをチェックする方法

ありがとうございました。
無事スクリーンセーバーを解除することが出来ました。

Yukishige wrote:

>ゆきしげです。
>
>SystemParametersInfo( SPI_SETSCREENSAVEACTIVE, TRUE, 0,
>SPIF_SENDWININICHANGE);
>は試されましたか?
>
>ScreenSaverを起動するまでのタイマーカウントを0に戻すみたいです。
>
>
>
>
>  
>
30

[mfc 45263] Re: アイコンをレポートビューに表示

 Toyoです。

>下記の変数はメンバ変数ですよね?
>
>> //      ListView で定義.
>> 
>>  CFileListCtrl m_List;
>>  CImageList m_Img;
 これがメンバで、
 
>>  int i;
>>  SHFILEINFO info;
>>  HIMAGELIST hImgList;
>>  LVITEM item;
>>
 こっちが、ローカルです。ですが結局

hImgList = (HIMAGELIST) ::SHGetFileInfo( 
m_pDoc->m_Path[i], 0, &info, sizeof(info), 
SHGFI_SMALLICON|SHGFI_SYSICONINDEX
);

 のように、フラグに SHGFI_SYSICONINDEX を追加する事で解決しました。

                                                       2003/06/30 17:42:39


 ¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬
 ¬                          ¬
 ¬             Toyo           ¬
 ¬                          ¬
 ¬                          ¬
 ¬         Mail : t...@nifty.com     ¬
 ¬                          ¬
 ¬  URL : http://homepage3.nifty.com/workshoptoyo  ¬
 ¬                          ¬
 ¬                          ¬
 ¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬
30

[mfc 45262] ダイアログの背景色について

西です。いつもおせわになります。

アプリケーションの作成で、ダイアログを選択しダイアログに背景色を表示するため

OnCtlColor()を下記のようにしました。
希望通りの背景色を表示してきますが、しばらく放置しておくとこのアプリのヘッ
ダー
の部分が再描画されず他のダイアログでかぶった状態のままになってしまいます。
どなたか、ご教授ください。お願いします。

このアプリの目的は、ファイルの受信のチェックで、OnTimer(UINT nIDEvent)
で割り込み常にファイルをチェックしてます。だいたい3秒間隔ぐらい。
受信を確認すると、 nRecievMode = 1; が1になり背景色が変更されます。

実行環境は、WindowXPです。 VC++6 MFC
..h
 unsigned long nBeforeColor;
 unsigned long nAfterColor;

HBRUSH CCheckerDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
 HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

 // TODO: この位置で DC のアトリビュートを変更してください

 // ここでテキストを表示するとスタックがなくなる
 if(nCtlColor == CTLCOLOR_DLG) {
  if(nRecievMode == 0) {
   pDC->SetBkMode(TRANSPARENT);
      return CreateSolidBrush(nBeforeColor);
  } else {
   pDC->SetBkMode(TRANSPARENT);
      return CreateSolidBrush(nAfterColor);
  }
 }

 if(nCtlColor == CTLCOLOR_STATIC) {
  if(nRecievMode == 0) {
   if(pWnd->m_hWnd == m_static2.m_hWnd) {
    pDC->SetTextColor(BLACK);
    pDC->SetBkMode(TRANSPARENT);
    return CreateSolidBrush(nBeforeColor);
   }
   if(pWnd->m_hWnd == m_static.m_hWnd) {
    pDC->SetTextColor(RED);
    pDC->SetBkMode(TRANSPARENT);
       return CreateSolidBrush(nBeforeColor);
   }
  } else {
   if(pWnd->m_hWnd == m_static.m_hWnd) {
    pDC->SetTextColor(RED);
    pDC->SetBkMode(TRANSPARENT);
       return CreateSolidBrush(nAfterColor);
   }
   if(pWnd->m_hWnd == m_static2.m_hWnd) {
    pDC->SetTextColor(BLACK);
    pDC->SetBkMode(TRANSPARENT);
    return CreateSolidBrush(nAfterColor);
   }
  }
 }

 // TODO: デフォルトのブラシが望みのものでない場合には、違うブラシを返してく
ださい
 return hbr;
}
30

[mfc 45261] Re: アイコンをレポートビューに表示

どうもこんにちは

たなかです。


> れません。誤っているのは、どこでしょうか?

下記の変数はメンバ変数ですよね?

> //      ListView で定義.

>  CFileListCtrl m_List;
>  CImageList m_Img;

>  int i;
>  SHFILEINFO info;
>  HIMAGELIST hImgList;
>  LVITEM item;
30

[mfc 45260] アイコンをレポートビューに表示

 Toyoです。

 選択した実行ファイルの小さなアイコンと名前の一覧をレポートビューに表示さ
せようとして、以下のようなコードを書いたのですが、ビューには名前しか表示さ
れません。誤っているのは、どこでしょうか?

//      ListView で定義.

CFileListCtrl m_List;
CImageList m_Img;

int i;
SHFILEINFO info;
HIMAGELIST hImgList;
LVITEM item;

for ( i=m_Count; i<max; ++i ) {
        // ファイル情報の取得.
hImgList = (HIMAGELIST) ::SHGetFileInfo( 
m_pDoc->m_Path[i], 0, &info, sizeof(info), 
SHGFI_SMALLICON|SHGFI_OPENICON

);
m_Img.Attach(hImgList);
m_List.SetImageList( &m_Img, LVSIL_SMALL );
item.mask = LVIF_TEXT|LVIF_IMAGE;
item.iItem = 0;
item.iSubItem = 0;
item.pszText = m_pDoc->m_Path[i];
item.iImage = info.iIcon;
m_List.InsertItem(&item);
};


                                                       2003/06/29 23:35:22


 ¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬
 ¬                          ¬
 ¬             Toyo           ¬
 ¬                          ¬
 ¬                          ¬
 ¬         Mail : t...@nifty.com     ¬
 ¬                          ¬
 ¬  URL : http://homepage3.nifty.com/workshoptoyo  ¬
 ¬                          ¬
 ¬                          ¬
 ¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬
記事検索
Amazon.co.jp
  • ライブドアブログ