使用QDraw在Qt中绘图 - 无法锁定绘图,如果没有最大化窗口则无法绘制

时间:2016-12-27 03:23:09

标签: c++ qt gcc drawing

我在Xtntu的Qt(使用QPainter)中使用给定的阻塞道路参数从A点到B点编写模拟车辆。我在Github上传了代码。

  1. 如果没有最大化窗口并恢复以前的尺寸,则不会绘制板。如何解决?
  2. 是否可以锁定图纸?因为paintEvent方法总是被执行。 当我使用setUpdatesEnabled(false)时,主窗口被冻结。
  3. paintEvent方法:

        void main_window::paintEvent(QPaintEvent *event)
        {
            Q_UNUSED(event);
    
            try
            {
                if (!((this->new_city->get_size_field1() == -1) && (this->new_city->get_size_field2() == -1)))
                {
                    int x = -1;
                    int y = -1;
                    ui->actionNew_simulation->setDisabled(true);
                    this->q = new QPainter (this);
                    this->new_city->draw_city(this->q);
                    this->set_car_button();
                    this->q->end();
                }
            }
    
            catch (...)
            {
                //locked drawing
                this->end_simulation();
            }
        }
    

    感谢所有答案。

0 个答案:

没有答案