• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            笑看風云淡

            寵辱不驚,看庭前花開花落;去留無意,望天空云卷云舒
            posts - 96, comments - 48, trackbacks - 0, articles - 0
              C++博客 :: 首頁 :: 新隨筆 ::  :: 聚合  :: 管理

            CGridCtrl控件使用

            Posted on 2008-12-29 16:22 天之驕子 閱讀(5058) 評論(1)  編輯 收藏 引用
            CGridCtrl類派生于CWnd類,該類主要包含以下八個方面的函數,其
            函數形式如下:

            class CGridCtrl : public CWnd

            {
                
                
            //  1. CGridCtrl類的構造函數
                
                CGridCtrl(
            int nRows = 0int nCols = 0int nFixedRows = 0int nFixedCols = 0);
                
                BOOL Create(
            const RECT& rect, CWnd* parent, UINT nID,
                    
                    DWORD dwStyle 
            = WS_CHILD | WS_BORDER | WS_TABSTOP | WS_VISIBLE);

                
                
            //  2. 表格行、列數方面的函數
                
                BOOL SetRowCount(
            int nRows);                         //設置表的行數
                    
                BOOL SetColumnCount(
            int nCols);                      //設置表的列數
                    
                BOOL SetFixedRowCount(
            int nFixedRows = 1);            //設置表的固定行數
                    
                BOOL SetFixedColumnCount(
            int nFixedCols = 1);         //設置表的固定列數
                    
                
            int  GetFixedRowCount() const;                        //  取表的固定行數
                    
                
            int  GetFixedColumnCount() const;                     //取表的固定列數
                    
                ……
                    
                
            //  3. 表格尺寸大小方面的函數
                    
                BOOL SetRowHeight(
            int row, int height);                //設置表格單元的高度
                    
                BOOL SetColumnWidth(
            int col, int height);              //設置表格單元的寬度
                    
                
            int GetRowHeight(int nRow) const;                      //獲取表格單元的高度
                    
                
            int GetColumnWidth(int nCol) const;                    //獲取表格單元的寬度
                    
                
            void AutoSize();                          //對表格單元的高度與寬度進行自動設置
                    
                ……
                    
                
            //  4. 表格顯示與特征方面的函數
                    
                
            void SetImageList(CImageList* pList);                    //設置列表圖標
                
                
            void SetEditable(BOOL bEditable = TRUE);                 //設置表格的編輯狀態
                    
                BOOL SetColumnType(
            int nCol, int nType);                 //設置表格的列狀態
                    
                ……
                    
                
            // 5. 顏色方面的函數
                    
                
            void SetTextColor(COLORREF clr);                    //設置輸入表格的文本顏色
                    
                
            void SetTextBkColor(COLORREF clr);               //設置可供輸入文本的表格顏色
                    
                
            void SetFixedTextColor(COLORREF clr);            //設置輸入固定表格的文本顏色
                    
                
            void SetFixedBkColor(COLORREF clr);              //設置固定表格顏色
                    
                ……
                    
                
            // 6. 表格信息函數
                    
                BOOL SetItem(
            const GV_ITEM* pItem);              // 向表格中輸入信息
                    
                BOOL SetItemText(
            int nRow, int nCol, LPCTSTR str);    //向某一單元表格中輸入文本
                    
                BOOL SetItemImage(
            int nRow, int nCol, int iImage);     //在某一單元表格中設置圖標
                    
                ……
                    
                
            // 7. 編輯方面的函數
                    
                
            virtual void OnEditCell(int nRow, int nCol, UINT nChar)     //開始對表格進行編輯
                    
                
            virtual void OnEndEditCell(int nRow, int nCol, CString str)   //結束對表格編輯
                    
                ……
                    
                
            // 8. 表格打印函數
                    
                
            void Print();                                       //打印表格
                    
                ……
                    
            }
            ;

            CGridCtrl類的構造函數形式如下:

            CGridCtrl::CGridCtrl(int nRows, int nCols, int nFixedRows, int nFixedCols)

            {

                m_crWindowText       
            = ::GetSysColor(COLOR_WINDOWTEXT);

                m_crWindowColour     
            = ::GetSysColor(COLOR_WINDOW);

                m_cr3DFace           
            = ::GetSysColor(COLOR_3DFACE);

                m_nRows              
            = 0;         //初始電子表格的行數

                m_nCols               
            = 0;        //初始電子表格的列數

                m_nFixedRows          
            = 0;        //初始化固定表格的行數

                m_nFixedCols           
            = 0;       //初始化固定表格的列數

                m_bEditable            
            = TRUE;    //初始化表格為可編輯狀態

                 ……

                   
            //初始化設置表格的行列數

                SetRowCount(nRows);

                SetColumnCount(nCols);

                SetFixedRowCount(nFixedRows);

                SetFixedColumnCount(nFixedCols);

                 
            // 初始化表格的背景顏色及輸入表格的文本顏色

                SetTextColor(m_crWindowText);

                SetTextBkColor(m_crWindowColour);

                SetFixedTextColor(m_crWindowText);

                SetFixedBkColor(m_cr3DFace);

                ……      
            }

            對表格中所輸入信息屬性的描述,是通過定義一結構體函數來實現,該結構體函數形式如下:

            typedef struct _GV_ITEM {
                
                
            int     row,col;            // 輸入信息的位置
                
                UINT    mask;                
            //輸入信息的灰度值
                
                UINT    state;                
            // 表格單元的狀態
                
                UINT    nFormat;            
            // 信息的輸入形式
                
                CString szText;                
            // 輸入表格單元的文本
                
            }
             GV_ITEM;


            將CGridCtrl類與以下類結合起來,即可構造成在其上可進行編輯和修改的電子
            表格,這些類分別為:

            1.用于單元表格范圍的兩個類:CCellRange[2]類和CCellID[3]類;

            2.單元表格狀態屬性的類:CGridCell[4]類;

            3.對表格進行編輯的兩個類:CInplaceEdit[5]類和CInplaceList[6]類;

            Feedback

            # re: CGridCtrl控件使用  回復  更多評論   

            2009-01-07 22:33 by gg
            不錯
            久久综合综合久久综合| 青青草国产97免久久费观看| 亚洲中文精品久久久久久不卡| 日韩精品久久久久久久电影蜜臀| www.久久99| 婷婷久久综合九色综合绿巨人| 亚洲精品无码久久久久| 91久久九九无码成人网站| 伊人久久精品无码二区麻豆| 天天爽天天爽天天片a久久网| 日韩久久久久中文字幕人妻| 久久久精品人妻一区二区三区四 | 久久久无码精品亚洲日韩软件| 久久久久亚洲AV无码观看 | 国产三级精品久久| 777午夜精品久久av蜜臀| 国内精品免费久久影院| 久久精品人人做人人妻人人玩| 无码人妻少妇久久中文字幕| 色综合久久中文色婷婷| 久久中文骚妇内射| 大香伊人久久精品一区二区| 狠狠色丁香婷婷综合久久来来去 | 亚洲国产精品18久久久久久| 亚洲精品美女久久久久99小说| 久久国产精品99久久久久久老狼| 性做久久久久久久| 中文无码久久精品| 久久婷婷人人澡人人爽人人爱| 青青草原综合久久大伊人导航| 久久久久亚洲AV无码专区桃色 | 亚洲欧美成人综合久久久| 狠狠色丁香久久婷婷综合蜜芽五月 | 99精品久久久久中文字幕| 无码专区久久综合久中文字幕| 热re99久久6国产精品免费| 久久久国产打桩机| 伊人久久大香线蕉综合Av| 久久精品国产亚洲AV影院| 人妻无码久久一区二区三区免费| 77777亚洲午夜久久多人|