亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? cellrange.h

?? 功能非常齊全的GridControl,能對(duì)窗體中顯示數(shù)據(jù)庫(kù)數(shù)據(jù)的表格進(jìn)行多種操作.
?? H
字號(hào):
///////////////////////////////////////////////////////////////////////
// CellRange.h: header file
//
// MFC Grid Control - interface for the CCellRange class.
//
// Written by Chris Maunder <cmaunder@mail.com>
// Copyright (c) 1998-2000. All Rights Reserved.
//
// This code may be used in compiled form in any way you desire. This
// file may be redistributed unmodified by any means PROVIDING it is 
// not sold for profit without the authors written consent, and 
// providing that this notice and the authors name and all copyright 
// notices remains intact. 
//
// An email letting me know how you are using it would be nice as well. 
//
// This file is provided "as is" with no expressed or implied warranty.
// The author accepts no liability for any damage/loss of business that
// this product may cause.
//
// For use with CGridCtrl v2.10
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_CELLRANGE_H__F86EF761_725A_11D1_ABBA_00A0243D1382__INCLUDED_)
#define AFX_CELLRANGE_H__F86EF761_725A_11D1_ABBA_00A0243D1382__INCLUDED_

#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000

// The code contained in this file is based on the original
// WorldCom Grid control written by Joe Willcoxson,
//      mailto:chinajoe@aol.com
//      http://users.aol.com/chinajoe

class CCellID
{    
// Attributes
public:
    int row, col;

// Operations
public:
    CCellID(int nRow = -1, int nCol = -1) : row(nRow), col(nCol) {}

    int IsValid() const { return (row >= 0 && col >= 0); }
    int operator==(const CCellID& rhs)    { return (row == rhs.row && col == rhs.col); }
    int operator!=(const CCellID& rhs)    { return !operator==(rhs); }
};

class CCellRange
{ 
public:
    
    CCellRange(int nMinRow = -1, int nMinCol = -1, int nMaxRow = -1, int nMaxCol = -1)
    {
        Set(nMinRow, nMinCol, nMaxRow, nMaxCol);
    }

    void Set(int nMinRow = -1, int nMinCol = -1, int nMaxRow = -1, int nMaxCol = -1);
    
    int  IsValid() const;
    int  InRange(int row, int col) const;
    int  InRange(const CCellID& cellID) const;
    int  Count() { return (m_nMaxRow - m_nMinRow + 1) * (m_nMaxCol - m_nMinCol + 1); }
    
    CCellID  GetTopLeft() const;
    CCellRange  Intersect(const CCellRange& rhs) const;
    
    int GetMinRow() const {return m_nMinRow;}
    void SetMinRow(int minRow) {m_nMinRow = minRow;}
    
    int GetMinCol() const {return m_nMinCol;}
    void SetMinCol(int minCol) {m_nMinCol = minCol;}
    
    int GetMaxRow() const {return m_nMaxRow;}
    void SetMaxRow(int maxRow) {m_nMaxRow = maxRow;}
    
    int GetMaxCol() const {return m_nMaxCol;}
    void SetMaxCol(int maxCol) {m_nMaxCol = maxCol;}

    int GetRowSpan() const {return m_nMaxRow - m_nMinRow + 1;}
    int GetColSpan() const {return m_nMaxCol - m_nMinCol + 1;}
    
    int  operator==(const CCellRange& rhs);
    int  operator!=(const CCellRange& rhs);
    
protected:
    int m_nMinRow;
    int m_nMinCol;
    int m_nMaxRow;
    int m_nMaxCol;
};

inline void CCellRange::Set(int minRow, int minCol, int maxRow, int maxCol)
{
     m_nMinRow = minRow;
     m_nMinCol = minCol;
     m_nMaxRow = maxRow;
     m_nMaxCol = maxCol;
}

inline int CCellRange::operator==(const CCellRange& rhs)
{
     return ((m_nMinRow == rhs.m_nMinRow) && (m_nMinCol == rhs.m_nMinCol) &&
             (m_nMaxRow == rhs.m_nMaxRow) && (m_nMaxCol == rhs.m_nMaxCol));
}

inline int CCellRange::operator!=(const CCellRange& rhs)
{
     return !operator==(rhs);
}

inline int CCellRange::IsValid() const
{
     return (m_nMinRow >= 0 && m_nMinCol >= 0 && m_nMaxRow >= 0 && m_nMaxCol >= 0 &&
             m_nMinRow <= m_nMaxRow && m_nMinCol <= m_nMaxCol);
}

inline int CCellRange::InRange(int row, int col) const
{
     return (row >= m_nMinRow && row <= m_nMaxRow && col >= m_nMinCol && col <= m_nMaxCol);
}

inline int CCellRange::InRange(const CCellID& cellID) const
{
     return InRange(cellID.row, cellID.col);
}

inline CCellID CCellRange::GetTopLeft() const
{
     return CCellID(m_nMinRow, m_nMinCol);
}

inline CCellRange CCellRange::Intersect(const CCellRange& rhs) const
{
     return CCellRange(max(m_nMinRow,rhs.m_nMinRow), max(m_nMinCol,rhs.m_nMinCol),
                       min(m_nMaxRow,rhs.m_nMaxRow), min(m_nMaxCol,rhs.m_nMaxCol));
}

#endif // !defined(AFX_CELLRANGE_H__F86EF761_725A_11D1_ABBA_00A0243D1382__INCLUDED_)

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
五月天视频一区| 日韩精品一区二区三区视频播放| 亚洲成av人片一区二区| 专区另类欧美日韩| 亚洲人成影院在线观看| 一色桃子久久精品亚洲| 亚洲人成亚洲人成在线观看图片| 亚洲天堂2014| 亚洲久草在线视频| 午夜精品成人在线| 精品一区二区三区免费观看| 国产一区二区三区久久久| 国产精品一区二区不卡| 成人一区在线看| 91网站在线播放| 91麻豆成人久久精品二区三区| 国产成人激情av| 《视频一区视频二区| 亚洲最大的成人av| 日本欧美久久久久免费播放网| 激情综合网激情| 成人手机在线视频| 欧美日韩国产综合一区二区三区 | 日韩三区在线观看| 日韩一级高清毛片| 中日韩av电影| 午夜av一区二区| 国产精品一区不卡| 色999日韩国产欧美一区二区| 欧美主播一区二区三区| 欧美不卡在线视频| 一区二区三区在线视频免费| 偷拍自拍另类欧美| 国产精品白丝av| 91官网在线免费观看| 2020国产精品久久精品美国| 自拍av一区二区三区| 蜜臀久久久久久久| 成人黄色777网| 欧美电影免费观看高清完整版在线| 国产精品国模大尺度视频| 日日摸夜夜添夜夜添亚洲女人| 国内精品伊人久久久久av一坑| 在线观看国产日韩| 国产清纯白嫩初高生在线观看91| 亚洲va天堂va国产va久| 99久久综合色| 久久美女艺术照精彩视频福利播放 | 欧美精品一区二区三区久久久| 国产精品不卡在线| 国模套图日韩精品一区二区 | 欧美久久久久免费| 日韩欧美亚洲一区二区| 中文字幕第一页久久| 天天做天天摸天天爽国产一区| 99精品在线观看视频| 久久综合九色综合久久久精品综合| 亚洲午夜激情网站| 91丨九色丨黑人外教| 中文字幕精品—区二区四季| 国产呦精品一区二区三区网站| 欧美三级在线视频| 一区二区三区精品视频| 91影视在线播放| 国产精品欧美精品| 春色校园综合激情亚洲| 久久久久高清精品| 国产精品一品视频| 国产清纯美女被跳蛋高潮一区二区久久w| 青青草成人在线观看| 91 com成人网| 色婷婷亚洲精品| 99热这里都是精品| 亚洲成av人片一区二区三区| 91污在线观看| 一区二区三区四区乱视频| 9色porny自拍视频一区二区| 中文字幕精品综合| 91在线视频免费91| 亚洲精品乱码久久久久久日本蜜臀| 99久久精品99国产精品| 一区二区三区免费| 欧美三级日韩三级国产三级| 石原莉奈在线亚洲三区| 日韩欧美高清一区| 国产精品一区二区在线看| 久久久久国色av免费看影院| 成人免费黄色在线| 亚洲欧洲中文日韩久久av乱码| 欧美午夜寂寞影院| 麻豆精品一区二区| 国产欧美日韩精品在线| av成人免费在线观看| 亚洲一区免费在线观看| 91麻豆精品91久久久久久清纯 | 国产婷婷精品av在线| 成人黄色网址在线观看| 一区二区在线观看不卡| 91精品国模一区二区三区| 国产在线精品一区二区三区不卡| 国产精品成人免费在线| 欧美精品在线一区二区三区| 黄页视频在线91| 亚洲精品成人天堂一二三| 538在线一区二区精品国产| 国产一区日韩二区欧美三区| 亚洲同性同志一二三专区| 欧美精品色综合| 成人性生交大片免费看中文网站| 亚洲精品视频在线观看免费| 欧美大片一区二区| 91久久精品午夜一区二区| 精品一二线国产| 亚洲国产毛片aaaaa无费看| 久久精品欧美日韩精品| 精品视频一区三区九区| 国产suv精品一区二区883| 亚洲香蕉伊在人在线观| 欧美经典一区二区三区| 91精品国产色综合久久ai换脸| 波多野结衣中文字幕一区二区三区| 午夜视频一区二区三区| 欧美激情一区三区| 日韩三级视频中文字幕| 在线精品视频一区二区三四| 丰满少妇久久久久久久| 久久99这里只有精品| 亚洲一本大道在线| 最新日韩在线视频| 中文字幕免费在线观看视频一区| 欧美一区二区三区免费视频| 91精品福利视频| 不卡的电影网站| 国产成+人+日韩+欧美+亚洲 | 欧美激情资源网| 制服丝袜亚洲网站| 欧美色精品天天在线观看视频| 99久久久精品| av日韩在线网站| 成人黄色av网站在线| 国产suv一区二区三区88区| 久久 天天综合| 精品一区二区久久| 韩国欧美国产1区| 韩国视频一区二区| 国内精品久久久久影院色| 麻豆免费看一区二区三区| 狠狠色丁香久久婷婷综| 91.xcao| 亚洲精品你懂的| 中文字幕在线观看一区二区| 国产精品美女久久久久aⅴ| 国产色一区二区| 国产肉丝袜一区二区| 久久亚洲影视婷婷| 欧美国产精品一区二区三区| 中文字幕免费一区| 国产成人精品影院| 高清不卡一二三区| 色综合咪咪久久| 91福利国产精品| 欧美日韩黄视频| 色丁香久综合在线久综合在线观看| 成人精品视频一区二区三区尤物| 国产成人久久精品77777最新版本| 国产美女在线精品| 99久久伊人网影院| 一本一本久久a久久精品综合麻豆| 日本丶国产丶欧美色综合| 3atv在线一区二区三区| www.综合网.com| 精品视频1区2区| 日韩欧美亚洲国产另类 | 国产不卡一区视频| 成人午夜激情视频| 一本色道**综合亚洲精品蜜桃冫| 欧美日韩国产综合一区二区| 日韩亚洲欧美在线观看| 亚洲国产精品精华液ab| 亚洲欧美二区三区| 亚洲成人av中文| 久久国产精品露脸对白| 国产精品羞羞答答xxdd| 欧美在线视频全部完| 91精品国产综合久久福利| 国产日产亚洲精品系列| 亚洲黄色小说网站| 亚洲大片在线观看| 久久er精品视频| 一本一本大道香蕉久在线精品| 欧美一区二区三区在线观看| 久久精品综合网| 日韩不卡一区二区三区 | 欧美日韩国产大片| 中文一区二区在线观看| 蜜芽一区二区三区| 91网上在线视频| 久久久国产精品麻豆| 日本伊人精品一区二区三区观看方式| 成人网页在线观看|