Skip to content
  • 0 Votes
    5 Posts
    180 Views
    G

    @Abderrahmene_Rayene smart!

  • 0 Votes
    2 Posts
    231 Views
    jsulmJ

    @Vasiliy-Isaikin said in QFrame border has differend line width but frameShadow is plain:

    Why?

    It looks like you're not using layouts?
    You should arrange your widgets in layouts, so they get sized and positioned properly.

  • 0 Votes
    1 Posts
    217 Views
    No one has replied
  • 0 Votes
    2 Posts
    924 Views
    sierdzioS

    There is no straightforward API for this. I see several possibilities:

    custom painting in QQuickPaintedItem custom painting in QQuickItem custom painting via GL shaders custom painting in QML Canvas a set of 4 animated Rectangle components, simulating the line. An ugly solution, but probably the easiest to do

    Perhaps BorderImage component can be forced to do an animation like that, but I doubt it.

  • 0 Votes
    3 Posts
    3k Views
    gde23G

    @mrjj

    Thx for the hint

    setStyleSheet("QTabWidget::pane {border-bottom: 0px;}");

    did the trick

  • 0 Votes
    3 Posts
    2k Views
    X

    Hi Henrik,

    as you requested by chat this is a more deep example.

    #ifndef MAINWIDGET_H #define MAINWIDGET_H #include <QWidget> class QResizeEvent; class QTextTable; class MainWidget : public QWidget { Q_OBJECT public: MainWidget(QWidget *parent = 0); ~MainWidget(); protected: void resizeEvent(QResizeEvent *event) override; public slots: void contextMenuRequested(const QPoint& pos); void showColorPicker(); private: QTextTable *_table; }; #endif // MAINWIDGET_H #include "MainWidget.h" #include <QTextEdit> #include <QTextCursor> #include <QTextTable> #include <QMenu> #include <QAction> #include <QColorDialog> #include <QDebug> MainWidget::MainWidget(QWidget *parent) : QWidget(parent) { setContextMenuPolicy(Qt::CustomContextMenu); connect(this, &QWidget::customContextMenuRequested,this, &MainWidget::contextMenuRequested); } MainWidget::~MainWidget() { } void MainWidget::contextMenuRequested(const QPoint& pos) { qDebug() << "Menu Requested"; QMenu *contextMenu = new QMenu(this); QAction *action = contextMenu->addAction("Color"); contextMenu->popup(mapToGlobal(pos)); connect(action, &QAction::triggered, this, &MainWidget::showColorPicker); } void MainWidget::resizeEvent(QResizeEvent *event) { QTextEdit *te = new QTextEdit(this); QTextCursor cursor = te->textCursor(); QTextTableFormat tf; tf.setBorderBrush(Qt::red); _table = cursor.insertTable(5, 5, tf); } void MainWidget::showColorPicker() { QColor color = QColorDialog::getColor(); QTextTableFormat tf = _table->format(); tf.setBorderBrush(color); _table->setFormat(tf); }

    Maybe you could change the QTextDocument style, to change all the tables in the document, this is somenthing I don't know.

    Hope this helps!

  • 0 Votes
    4 Posts
    1k Views
    Y

    @maximus Yes, I decided not to do it.