我希望把提取的图标显示出来,代码是这样的,为何不显示?
void CIconDlg::OnGet()
{
CFileDialog fileDialog(TRUE,"*.ICON",NULL,NULL,"资源文件
(*.ICO,*.BMP,*.EXE,*.DLL,*.ICL)|*.ICO;*.BMP;*.EXE;*.DLL;*.ICL||");
if (fileDialog.DoModal()==IDOK)
{
//VERIFY(openfileName.Open(fileDialog.GetFileName(),CFile::modeRead));
openfileName=fileDialog.GetPathName();
openextName=fileDialog.GetFileExt();
m_list.ResetContent();//清除list box中的所有入口值
HICON hIcon;
hIcon=ExtractIcon(AfxGetInstanceHandle(),openextName,-1);
if (hIcon==NULL)
{
m_list.AddString(openfileName);
}
if (myStatic.GetIcon()==NULL)
{
myStatic.SetIcon(hIcon);
}
}
myStatic的创建是在对话框类初始化时创建的myStatic.Create(NULL,WS_CHILD|WS_VISIBLE|SS_ICON,CRect(280,280,300,300),this);
为何看不到显示的图标?请大家帮帮忙吧!
void CIconDlg::OnGet()
{
CFileDialog fileDialog(TRUE,"*.ICON",NULL,NULL,"资源文件
(*.ICO,*.BMP,*.EXE,*.DLL,*.ICL)|*.ICO;*.BMP;*.EXE;*.DLL;*.ICL||");
if (fileDialog.DoModal()==IDOK)
{
//VERIFY(openfileName.Open(fileDialog.GetFileName(),CFile::modeRead));
openfileName=fileDialog.GetPathName();
openextName=fileDialog.GetFileExt();
m_list.ResetContent();//清除list box中的所有入口值
HICON hIcon;
hIcon=ExtractIcon(AfxGetInstanceHandle(),openextName,-1);
if (hIcon==NULL)
{
m_list.AddString(openfileName);
}
if (myStatic.GetIcon()==NULL)
{
myStatic.SetIcon(hIcon);
}
}
myStatic的创建是在对话框类初始化时创建的myStatic.Create(NULL,WS_CHILD|WS_VISIBLE|SS_ICON,CRect(280,280,300,300),this);
为何看不到显示的图标?请大家帮帮忙吧!
hIcon=ExtractIcon(AfxGetInstanceHandle(),openfileName,0);//注意:openextName ----> openfileName
pStatic->SetIcon(hIcon);
InvalidateRect(NULL,TRUE);
onpaint函数不作任何变动,但是还是显示不出来,请大家帮帮忙吧。