saxhandler.cpp
来自「这里包含了一些QT的小例子,很有价值的,希望对大家有帮助」· C++ 代码 · 共 58 行
CPP
58 行
#include <qlistview.h>#include "saxhandler.h"SaxHandler::SaxHandler(QListView *view){ listView = view; currentItem = 0;}bool SaxHandler::startElement(const QString &, const QString &, const QString &qName, const QXmlAttributes &attribs){ if (qName == "entry") { if (currentItem) { currentItem = new QListViewItem(currentItem); } else { currentItem = new QListViewItem(listView); } currentItem->setOpen(true); currentItem->setText(0, attribs.value("term")); } else if (qName == "page") { currentText = ""; } return true;}bool SaxHandler::characters(const QString &str){ currentText += str; return true;}bool SaxHandler::endElement(const QString &, const QString &, const QString &qName){ if (qName == "entry") { currentItem = currentItem->parent(); } else if (qName == "page") { if (currentItem) { QString allPages = currentItem->text(1); if (!allPages.isEmpty()) allPages += ", "; allPages += currentText; currentItem->setText(1, allPages); } } return true;}bool SaxHandler::fatalError(const QXmlParseException &exception){ qWarning("Line %d, column %d: %s", exception.lineNumber(), exception.columnNumber(), exception.message().ascii()); return false;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?