Вы также можете взглянуть на возможности библиотеки Qt
.
Он поддерживает регулярные выражения, а класс QString имеет хорошие методы, например. split()
возвращает QStringList, список строк, полученных путем разделения исходной строки с предоставленным разделителем. Должно быть достаточно для файла csv ..
Чтобы получить столбец с заданным именем заголовка, я использую следующее: c ++ наследование Qt проблема qstring
Как вы заметили, QChart рисует только фон, основная функция QChart - сохранить конфигурацию чертежа как тему, тип диаграммы и т. Д. Таким образом, вы не можете отобразить кнопку. Обходной путь должен создать QGraphicsEllipseItem:
class ChartWidget: public QChart
{
public:
ChartWidget(QGraphicsItem *parent = nullptr, Qt::WindowFlags wFlags = Qt::WindowFlags()):
QChart(parent, wFlags), item(new QGraphicsEllipseItem(QRectF(-3, -3, 6, 6)))
{
const QColor color(255, 0, 0, 255);
item->setZValue(100);
QPen pen(color);
pen.setWidth(3);
item->setBrush(color);
item->setPen(pen);
}
protected:
void mousePressEvent(QGraphicsSceneMouseEvent *event)
{
if(!item->scene()) scene()->addItem(item);
item->setPos(event->scenePos());
QChart::mousePressEvent(event);
}
private:
QGraphicsEllipseItem *item;
};