`
dqifa
  • 浏览: 112249 次
社区版块
存档分类
最新评论

wxWidgets中贴图操作

 
阅读更多
这个问题曾经困惑了我很久,因为wxWidgets的资料在网上并不是很多,所幸在工期的压力下还是捣鼓出来了。向窗体上贴图,一般图片格式采用的是JPG或者是BMP。在这里做一个申明。
        //添加jpg和bmp文件支持 
      wxImage::AddHandler(new wxJPEGHandler); 
        wxImage::AddHandler(new wxBMPHandler);
 
贴图函数:
//在指定位置进行贴图 
//pt_x为x坐标,pt_y为y坐标,strImagePath为要加载图片的相对路径 
void iringFrame::DrawPicture() 
{ 


    wxBitmap bitmap; 
    bitmap.LoadFile(strImagePath,wxBITMAP_TYPE_JPEG); 
    //判断图片是否加载成功 
    if (bitmap.Ok()) 
    { 
//dc绘图
//dc.DrawBitmap(bitmap,rCallOpenX,rCallOpenY,1);
//m_bitmap7为贴图的区域
        m_bitmap7->SetBitmap(bitmap); 
    } 
    else 
    { 
        //图片加载失败 
        strImagePath.Printf(wxT("The picture adds to carry a mistake!!!")); 
        wxMessageBox(strImagePath,_("cicatel")); 

    } 
}
 
另外按需求,对鼠标移动时光标的改变也做了处理,没什么难度,主要是文档资料都是英文,理解起来比较困难,所以权且做一个备忘吧.
//鼠标移动到按钮上时光标的变化 
void iringFrame::getMousePoint() 
{ 
     //默认状态的光标 
    if (checkKeyArea() == keyNoTouch)
    { 
        wxCursor down_cursor = wxCursor(wxCURSOR_ARROW); 
        SetStyle(down_cursor); 
    } 
    else 
    { //处于按钮位置的光标 
        wxCursor down_cursor = wxCursor(wxCURSOR_HAND); 
        SetStyle(down_cursor); 
    } 

}
 
from:http://axiii.blog.51cto.com/396236/90137
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics