在open gl中怎么保证显示窗口移动后不变
- 你的回答被采纳后将获得:
- 系统奖励15(财富值+成长值)+难题奖励30(财富值+成长值)
展开全部
显示器移窗口候,黑色四条线让全窗口移四条黑线组形
MFC用菜单资源添加事件处理程序CxxxxDoc::OnFileOpen()打图片,马调用onDraw函数刷新移窗口才能看图片显示才能调用CxxxxView::OnDraw()函数选择打框立即显示图片
利用菜单资源添加事件处理程序CxxxxDoc::OnFileOpen()
代码
void CImagePCBDoc::OnFileOpen()
{
CFileDialog fileDlg(TRUE);
fileDlg.m_ofn.lpstrFilter=LPCTSTR(_T("JPEG(*.jpg)\0*.jpg\0BMP(*.bmp)\0*.bmp\0PNG(*.png)\0*.png\0ImagePCB Files(*.ipcb)\0*.ipcb\0Protel 99SE Files(*.pcb)\0*.pcb\0All Files(*.*)\0*.*\0\0"));
//定义打框标题
fileDlg.m_ofn.lpstrTitle=LPCTSTR(_T("打文件"));
char szchar[20];
memset(szchar,0,20);
if (fileDlg.DoModal()==IDOK)
{
if (m_dib.Read(fileDlg.m_ofn.lpstrFile) == TRUE)
{
SetModifiedFlag(FALSE); // start off with unmodified
// 添加刷新程序
File.close();
}
}
}
我用几种都行
第种添加刷新程序处添加
((CImagePCBView*)((CMainFrame*)AfxGetMainWnd())-> GetActiveView())->Invalidate();
第二种添加刷新程序处添加
UpdateAllViews(NULL);
第三种添加刷新程序处添加
OnOpenDocument(fileDlg.m_ofn.lpstrFile);
其余代码写供参考
void CxxxxView::OnDraw(CDC* pDC)
{
// 获取文档类指针
CImagePCBDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
if (!pDoc)
return;
//返m_dib指针
ImageProcessing *pDib=pDoc->GetPDib();
//获取DIB尺寸
CSize sizeFileDib = pDib->GetDimensions();
//显示DIB
pDib->Draw(pDC, CPoint(0, 0), sizeFileDib);
}
doc文件
// 实现
public:
virtual ~CImagePCBDoc();
//返m_dib指针
ImageProcessing *GetPDib()
{
return &m_dib;
}
private:
//mageProcessing类象
ImageProcessing m_dib;
CImageProcessing类标准图像处理类
能调试再加100
MFC用菜单资源添加事件处理程序CxxxxDoc::OnFileOpen()打图片,马调用onDraw函数刷新移窗口才能看图片显示才能调用CxxxxView::OnDraw()函数选择打框立即显示图片
利用菜单资源添加事件处理程序CxxxxDoc::OnFileOpen()
代码
void CImagePCBDoc::OnFileOpen()
{
CFileDialog fileDlg(TRUE);
fileDlg.m_ofn.lpstrFilter=LPCTSTR(_T("JPEG(*.jpg)\0*.jpg\0BMP(*.bmp)\0*.bmp\0PNG(*.png)\0*.png\0ImagePCB Files(*.ipcb)\0*.ipcb\0Protel 99SE Files(*.pcb)\0*.pcb\0All Files(*.*)\0*.*\0\0"));
//定义打框标题
fileDlg.m_ofn.lpstrTitle=LPCTSTR(_T("打文件"));
char szchar[20];
memset(szchar,0,20);
if (fileDlg.DoModal()==IDOK)
{
if (m_dib.Read(fileDlg.m_ofn.lpstrFile) == TRUE)
{
SetModifiedFlag(FALSE); // start off with unmodified
// 添加刷新程序
File.close();
}
}
}
我用几种都行
第种添加刷新程序处添加
((CImagePCBView*)((CMainFrame*)AfxGetMainWnd())-> GetActiveView())->Invalidate();
第二种添加刷新程序处添加
UpdateAllViews(NULL);
第三种添加刷新程序处添加
OnOpenDocument(fileDlg.m_ofn.lpstrFile);
其余代码写供参考
void CxxxxView::OnDraw(CDC* pDC)
{
// 获取文档类指针
CImagePCBDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
if (!pDoc)
return;
//返m_dib指针
ImageProcessing *pDib=pDoc->GetPDib();
//获取DIB尺寸
CSize sizeFileDib = pDib->GetDimensions();
//显示DIB
pDib->Draw(pDC, CPoint(0, 0), sizeFileDib);
}
doc文件
// 实现
public:
virtual ~CImagePCBDoc();
//返m_dib指针
ImageProcessing *GetPDib()
{
return &m_dib;
}
private:
//mageProcessing类象
ImageProcessing m_dib;
CImageProcessing类标准图像处理类
能调试再加100
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询