多行编辑器控件示例(10_UiEdit)

Ui_Edit

此示例展示以下控件的使用方法:

多行编辑器控件UiEdit使用流程

示例代码展示:

10_UiEdit1.png
10_UiEdit2.png

如何添加图片:

选择图片
TCHAR* tempfilename = new TCHAR[MAX_PATH];
IMzSelect *pSelect = NULL; 
IFileBrowser *pFile = NULL;                      
CoInitializeEx(NULL, COINIT_MULTITHREADED );
if ( SUCCEEDED( CoCreateInstance( CLSID_FileBrowser, NULL,CLSCTX_INPROC_SERVER ,IID_MZ_FileBrowser,(void **)&pFile ) ) )
{     
    if( SUCCEEDED( pFile->QueryInterface( IID_MZ_Select, (void**)&pSelect ) ) )
    {
        TCHAR file[ MAX_PATH ] = { 0 };
        pFile->SetParentWnd( m_hWnd );
        pFile->SetOpenDirectoryPath( L"\\Disk\\Photo" ); 
        pFile->SetOpenDocumentType(DOCUMENT_SELECT_PHOTO);                                     
        pFile->SetOpenDocumentType(DOCUMENT_SELECT_SINGLE_FILE); 
        if( pSelect->Invoke() ) 
        {         
            //获得图片路径
            StringCbCopy( tempfilename,256*sizeof(TCHAR), pFile->GetSelectedFileName() );
        }
        pSelect->Release();         
    }     
    pFile->Release();
}  
CoUninitialize();
::InvalidateRect( m_hWnd, NULL, FALSE );
::UpdateWindow( m_hWnd );

//将图片路径以消息的形式发送给主窗口
if (wcslen(tempfilename)>0)
{
    PostMessage(WM_SELECTED_FILE,(WPARAM)tempfilename,NULL);
}
else
    MzAutoMsgBoxEx(m_hWnd, L"选择文件失败");

//在主窗口中处理消息,添加图片
virtual LRESULT MzDefWndProc(UINT message, WPARAM wParam, LPARAM lParam)
{
    switch(message)
    {
    case WM_SELECTED_FILE:                              //有文件被选中时
    {
        WCHAR* fileName = (WCHAR*)wParam;
        m_pEdit->AddImage(fileName);
        m_pEdit->Invalidate();
        m_pEdit->Update();                
    }
    break;
    }
    return CMzWndEx::MzDefWndProc(message,wParam,lParam);
}

完整示例: 源码在以下目录(假设你将M8SDK安装在盘符C:\):


Generated at Tue Feb 9 15:09:53 2010 for Meizu M8 SDK Documentation by  doxygen 1.6.1