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

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

?? cell.cpp

?? GUI Programming With Qt4 的書付源碼
?? CPP
字號:
#include <QtGui>#include "cell.h"Cell::Cell(){    setDirty();}QTableWidgetItem *Cell::clone() const{    return new Cell(*this);}void Cell::setData(int role, const QVariant &value){    QTableWidgetItem::setData(role, value);    if (role == Qt::EditRole)        setDirty();}QVariant Cell::data(int role) const{    if (role == Qt::DisplayRole) {        if (value().isValid()) {            return value().toString();        } else {            return "####";        }    } else if (role == Qt::TextAlignmentRole) {        if (value().type() == QVariant::String) {            return int(Qt::AlignLeft | Qt::AlignVCenter);        } else {            return int(Qt::AlignRight | Qt::AlignVCenter);        }    } else {        return QTableWidgetItem::data(role);    }}void Cell::setFormula(const QString &formula){    setData(Qt::EditRole, formula);}QString Cell::formula() const{    return data(Qt::EditRole).toString();}void Cell::setDirty(){    cacheIsDirty = true;}const QVariant Invalid;QVariant Cell::value() const{    if (cacheIsDirty) {        cacheIsDirty = false;        QString formulaStr = formula();        if (formulaStr.startsWith('\'')) {            cachedValue = formulaStr.mid(1);        } else if (formulaStr.startsWith('=')) {            cachedValue = Invalid;            QString expr = formulaStr.mid(1);            expr.replace(" ", "");            expr.append(QChar::Null);            int pos = 0;            cachedValue = evalExpression(expr, pos);            if (expr[pos] != QChar::Null)                cachedValue = Invalid;        } else {            bool ok;            double d = formulaStr.toDouble(&ok);            if (ok) {                cachedValue = d;            } else {                cachedValue = formulaStr;            }        }    }    return cachedValue;}QVariant Cell::evalExpression(const QString &str, int &pos) const{    QVariant result = evalTerm(str, pos);    while (str[pos] != QChar::Null) {        QChar op = str[pos];        if (op != '+' && op != '-')            return result;        ++pos;        QVariant term = evalTerm(str, pos);        if (result.type() == QVariant::Double                && term.type() == QVariant::Double) {            if (op == '+') {                result = result.toDouble() + term.toDouble();            } else {                result = result.toDouble() - term.toDouble();            }        } else {            result = Invalid;        }    }    return result;}QVariant Cell::evalTerm(const QString &str, int &pos) const{    QVariant result = evalFactor(str, pos);    while (str[pos] != QChar::Null) {        QChar op = str[pos];        if (op != '*' && op != '/')            return result;        ++pos;        QVariant factor = evalFactor(str, pos);        if (result.type() == QVariant::Double                && factor.type() == QVariant::Double) {            if (op == '*') {                result = result.toDouble() * factor.toDouble();            } else {                if (factor.toDouble() == 0.0) {                    result = Invalid;                } else {                    result = result.toDouble() / factor.toDouble();                }            }        } else {            result = Invalid;        }    }    return result;}QVariant Cell::evalFactor(const QString &str, int &pos) const{    QVariant result;    bool negative = false;    if (str[pos] == '-') {        negative = true;        ++pos;    }    if (str[pos] == '(') {        ++pos;        result = evalExpression(str, pos);        if (str[pos] != ')')            result = Invalid;        ++pos;    } else {        QRegExp regExp("[A-Za-z][1-9][0-9]{0,2}");        QString token;        while (str[pos].isLetterOrNumber() || str[pos] == '.') {            token += str[pos];            ++pos;        }        if (regExp.exactMatch(token)) {            int column = token[0].toUpper().unicode() - 'A';            int row = token.mid(1).toInt() - 1;            Cell *c = static_cast<Cell *>(                              tableWidget()->item(row, column));            if (c) {                result = c->value();            } else {                result = 0.0;            }        } else {            bool ok;            result = token.toDouble(&ok);            if (!ok)                result = Invalid;        }    }    if (negative) {        if (result.type() == QVariant::Double) {            result = -result.toDouble();        } else {            result = Invalid;        }    }    return result;}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品一卡两卡| 国产v综合v亚洲欧| 欧美精品乱人伦久久久久久| 亚洲视频 欧洲视频| 一本大道久久a久久精品综合| 中文字幕五月欧美| 91久久国产最好的精华液| 亚洲一区二区三区小说| 91精品在线麻豆| 国产一区二区三区四区五区入口 | 成人动漫精品一区二区| 国产精品国产三级国产专播品爱网| 成人午夜激情影院| 18成人在线观看| 欧美性受极品xxxx喷水| 日韩中文字幕91| 久久久蜜桃精品| 91蝌蚪porny| 日本成人超碰在线观看| 久久婷婷国产综合国色天香| 成人av免费网站| 亚洲一区二区三区自拍| 日韩欧美一卡二卡| 91香蕉视频在线| 人人狠狠综合久久亚洲| 国产欧美日韩中文久久| 色欲综合视频天天天| 蜜臀久久99精品久久久画质超高清 | 天天综合网天天综合色| 欧美大片在线观看| av中文字幕在线不卡| 视频一区二区三区在线| 中文字幕精品一区二区精品绿巨人| 91看片淫黄大片一级在线观看| 免播放器亚洲一区| 亚洲色欲色欲www在线观看| 91精品国产欧美一区二区成人| 国产福利精品导航| 亚洲国产综合91精品麻豆| 国产亚洲午夜高清国产拍精品| 在线观看av一区| 国产成人夜色高潮福利影视| 婷婷久久综合九色国产成人| 亚洲国产成人私人影院tom| 欧美精品自拍偷拍| 97aⅴ精品视频一二三区| 久久精品国产久精国产爱| 亚洲精品一二三区| 国产日产欧美一区二区三区| 欧美一级高清大全免费观看| 91麻豆精东视频| 国产一区欧美二区| 五月激情丁香一区二区三区| 亚洲色大成网站www久久九九| 26uuu另类欧美| 欧美精品v国产精品v日韩精品| 国产成人aaaa| 激情综合五月婷婷| 日本成人在线网站| 亚洲电影在线播放| 亚洲免费观看高清| 欧美韩国日本综合| 亚洲精品在线观| 日韩免费性生活视频播放| 欧美日韩国产小视频在线观看| av一区二区三区在线| 国产不卡视频一区二区三区| 国产一区二区成人久久免费影院| 美女www一区二区| 日韩电影一区二区三区| 亚洲电影一区二区| 亚洲不卡av一区二区三区| 亚洲另类中文字| 亚洲欧美视频在线观看视频| 国产精品卡一卡二| 国产精品久久看| 国产精品美女久久久久久久久久久 | 欧美v亚洲v综合ⅴ国产v| 日韩一级欧美一级| 欧美mv和日韩mv的网站| 精品久久久久久无| 精品国产免费一区二区三区四区| 日韩一级大片在线观看| 日韩精品一区二区三区在线播放 | 色综合视频在线观看| 成人小视频免费在线观看| 成人av在线电影| 99视频在线精品| 在线区一区二视频| 欧美亚洲动漫精品| 欧美乱熟臀69xxxxxx| 日韩欧美黄色影院| 国产无一区二区| 中文字幕五月欧美| 亚洲综合清纯丝袜自拍| 日韩av一区二区在线影视| 美女www一区二区| 国产成人在线看| 99re热视频这里只精品| 欧美日韩五月天| 337p粉嫩大胆噜噜噜噜噜91av | 国产不卡一区视频| 91麻豆视频网站| 欧美日本视频在线| 欧美一区二区精品| 国产人伦精品一区二区| 一区二区三区四区不卡在线 | 欧美精品丝袜久久久中文字幕| 日韩欧美精品在线视频| 国产精品全国免费观看高清| 亚洲午夜电影网| 久久精品国产一区二区| 99视频有精品| 91精品国产一区二区三区| 久久久国产精品午夜一区ai换脸| 亚洲色图在线播放| 极品少妇xxxx精品少妇偷拍| 色综合天天综合网天天看片| 91精品国产综合久久久久久久| 久久精品一区二区三区不卡牛牛 | 精品成人在线观看| 亚洲视频 欧洲视频| 免费成人在线播放| 色哟哟一区二区| 日韩视频永久免费| 亚洲日韩欧美一区二区在线| 青青草成人在线观看| www.欧美日韩国产在线| 精品人伦一区二区色婷婷| 一区二区三区在线观看动漫| 国产在线视频一区二区| 欧美在线视频不卡| 国产精品天美传媒| 奇米影视一区二区三区小说| 91视视频在线直接观看在线看网页在线看 | 欧美r级电影在线观看| 亚洲精品国产视频| 国产精品一二三在| 日韩欧美一级二级| 亚洲一区二区三区不卡国产欧美| 国产高清不卡一区| 日韩视频国产视频| 亚洲国产另类av| 91老司机福利 在线| 国产亚洲欧美在线| 理论电影国产精品| 中文欧美字幕免费| 三级不卡在线观看| 欧美日韩中文另类| 亚洲啪啪综合av一区二区三区| 国产伦精一区二区三区| 日韩免费一区二区| 奇米一区二区三区| 欧美特级限制片免费在线观看| 国产精品每日更新| 国产 欧美在线| 久久久久久一二三区| 九九精品一区二区| 日韩精品中文字幕在线一区| 手机精品视频在线观看| 欧美视频一区在线观看| 伊人色综合久久天天| 色综合久久久网| 亚洲另类色综合网站| 91免费看视频| 亚洲欧洲成人精品av97| kk眼镜猥琐国模调教系列一区二区| 久久精品夜夜夜夜久久| 久久精品欧美一区二区三区不卡 | 国产日韩v精品一区二区| 蜜乳av一区二区| 欧美一区二区成人6969| 三级久久三级久久| 欧美一区国产二区| 久久黄色级2电影| 精品国产亚洲在线| 久久av中文字幕片| 丝袜美腿亚洲色图| 91蜜桃在线观看| 亚洲激情自拍视频| 欧美日韩三级一区| 免费在线观看一区二区三区| 欧美电影影音先锋| 久久99精品国产麻豆婷婷洗澡| 久久综合一区二区| 成人av在线影院| 亚洲午夜精品在线| 日韩免费在线观看| 国产99久久久国产精品| 亚洲色大成网站www久久九九| 91黄视频在线| 美女精品一区二区| 中文字幕第一区第二区| 在线亚洲欧美专区二区| 秋霞国产午夜精品免费视频| 国产亚洲美州欧州综合国| 波多野结衣精品在线| 亚洲第一成年网| 亚洲精品一区二区精华| 99精品国产99久久久久久白柏|