当前位置:编程学习 > wap >>

如何把lineEidt中的整数值作为paintEvent中的值来画直线呢?

我想画一条直线,能够把lineEdit中输入的数值作为直线的终点,起点为默认的(0,0)。
void Widget::paintEvent(QPaintEvent *event)
{
QPainter paint(this);
QPoint beginPoint;
QPoint endPoint;
beginPoint.setX(0);
beginPoint.setY( 0);
endPoint.setX( x );
endPoint.setY( y );
paint.drawLine( beginPoint, endPoint );
}

我提取出了lineEdit中的数值,不能直接咋不能直接作为终点(X,Y)进行画线。请问该如何实现呢?
--------------------编程问答-------------------- QLineEdit *pEdit;
pEdit->text().toInt() --------------------编程问答-------------------- x、y为Qstring类型,应该转成int text().toInt()  --------------------编程问答-------------------- 能详细一点吗?我试着编了几次都不对耶。这是用QWidget编写的带有ui的,其中第一个输入框属性是xEdit,第二个属性是yEdit,还有一个button,button属性是okButton;

如图,按下OK后,lineedit中值作为终点,画一条直线。 --------------------编程问答-------------------- #include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);

    //connect(ui->xEdit, SIGNAL(textChanged(const QString&)), this, SLOT(enableokButton(const QString&)));
}

Widget::~Widget()
{
    delete ui;
}



void Widget::paintEvent(QPaintEvent *event)
{

QPainter paint(this);
QPoint beginPoint;
QPoint endPoint;//定义插补坐标
beginPoint.setX(0);
beginPoint.setY( 0);
endPoint.setX( x );
endPoint.setY( y );
paint.drawLine( beginPoint, endPoint );
}


void Widget::on_okButton_clicked()
{
   int x;int y;

  QString text1=ui->xEdit->text();
   x=text1.toInt();
   QString text2=ui->yEdit->text();
   y=text2.toInt();
}
我还是编不对,该咋该写才行呢?还有画图和点击OK按钮着两件事编写的顺序有没有关系呢?
补充:移动开发 ,  Qt
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,