diff --git a/source/attributeTableModel.cpp b/source/attributeTableModel.cpp
index db906ae..a43c31e 100644
--- a/source/attributeTableModel.cpp
+++ b/source/attributeTableModel.cpp
@@ -176,13 +176,16 @@ int AttributeTableModel::rowCount(const QModelIndex& parent) const
return m_currentPageData.count();
}
-int AttributeTableModel::columnCount(const QModelIndex &) const
+int AttributeTableModel::columnCount(const QModelIndex& parent) const
{
return m_displayField.isEmpty() ? 0 : m_displayField.count() + 1;
}
Qt::ItemFlags AttributeTableModel::flags(const QModelIndex &index) const
{
+ if(!index.isValid())
+ return Qt::NoItemFlags;
+
Qt::ItemFlags flags = QAbstractTableModel::flags(index);
QModelIndex numberIndex = createIndex(index.row(), 0);
QString text = numberIndex.data(Qt::DisplayRole).toString();
diff --git a/source/dbManager.cpp b/source/dbManager.cpp
index 3b0ca9c..1ad533b 100644
--- a/source/dbManager.cpp
+++ b/source/dbManager.cpp
@@ -97,7 +97,7 @@ bool DatabaseManager::connect(const QString& strConnectionName)
QString::fromWCharArray(L"没有找到该链接的配置信息"),
QSqlError::ConnectionError);
emit errorOccurred(strConnectionName, error.databaseText());
- LOG_ERROR("DB", QString("Connection failed: %1 due 2%").arg(strConnectionName).arg("no configuration information"));
+ LOG_ERROR("DB", QString("Connection failed: %1 due to 2%").arg(strConnectionName, "no configuration information"));
return false;
}
@@ -113,10 +113,10 @@ bool DatabaseManager::connect(const QString& strConnectionName)
if(!db.open())
{
QString errorText = db.lastError().databaseText();
+ // QString transText = QString::fromUtf8(errorText.toLocal8Bit().constData());
+ // qDebug() << transText;
LOG_ERROR("DB", QString("DB: %1 open failed. connectionName: %2. error: %3")
- .arg(config.strDBName)
- .arg(strConnectionName)
- .arg(errorText/*QString::fromUtf8(errorText.toUtf8())*/));
+ .arg(config.strDBName, strConnectionName, errorText));
emit errorOccurred(strConnectionName, QString::fromWCharArray(L"数据库打开失败,详情可见日志文件"));
db.close();
db = QSqlDatabase();//重置为无效数据库对象,在下面remove的时候就不会出现"connection '***' is still in use, all queries will cease to work"的警告
diff --git a/source/modelInfoEditDialog.cpp b/source/modelInfoEditDialog.cpp
index 1f12e2e..be3c442 100644
--- a/source/modelInfoEditDialog.cpp
+++ b/source/modelInfoEditDialog.cpp
@@ -113,8 +113,9 @@ void ModelInfoEditDialog::initialize()
m_curModelID = -1;
ui->btnAddGroup->setVisible(false);
m_pMaskLayer = new MaskLayer(this);
- //正则表达式,只能输入字母
- QRegularExpression regExp("[A-Za-z0-9_]+");
+ //正则表达式,只能输入字母,且第一个字符不能是数字
+ //QRegularExpression regExp("[A-Za-z0-9_]+");
+ QRegularExpression regExp("^[A-Za-z_][A-Za-z0-9_]*$");
QRegularExpressionValidator* validator = new QRegularExpressionValidator(regExp, this);
ui->lineEdit_modelType->setValidator(validator);
diff --git a/ui/modelInfoEditDialog.ui b/ui/modelInfoEditDialog.ui
index 5ce4528..face588 100644
--- a/ui/modelInfoEditDialog.ui
+++ b/ui/modelInfoEditDialog.ui
@@ -311,11 +311,14 @@ QPushButton:pressed
0
+
+ *类别必须为英文,且首字符不能为数字
+
color: rgb(255, 0, 0);
- *类别必须为英文
+ *类别必须为英文...
Qt::AlignmentFlag::AlignCenter