QT中实现QlineEdit在输入时通过调用什么函数可以实现光标左右移动啊?

QT中实现QlineEdit在输入时通过调用什么函数可以实现光标左右移动啊?,第1张

这个用函数的话比较麻烦,但是我实现过了,QLineEdit有2个函数,第一设置光标位置,第二读取当前光标位置。你要在每次 *** 作前都要读取当前光标位置,然后再进行+1 或者-1,零界点你自己考虑,大概的思路是这样的

#include "widget.h"

#include "ui_widget.h"

#include <QDebug>

Widget::Widget(QWidget *parent) :

QWidget(parent),

ui(new Ui::Widget)

{

ui->setupUi(this)

}

Widget::~Widget()

{

delete ui

}

void Widget::on_pushButton_clicked()//+

{

int i = ui->lineEdit->cursorPosition()

qDebug() <<i

ui->lineEdit->setCursorPosition(++i)

ui->pushButton->setFocusPolicy(Qt::NoFocus)

ui->pushButton_2->setFocusPolicy(Qt::NoFocus)

ui->lineEdit->setFocus()

}

void Widget::on_pushButton_2_clicked()//-

{

int i = ui->lineEdit->cursorPosition()

qDebug() <<i

ui->lineEdit->setCursorPosition(--i)

ui->pushButton->setFocusPolicy(Qt::NoFocus)

ui->pushButton_2->setFocusPolicy(Qt::NoFocus)

ui->lineEdit->setFocus()

}

刚给你试了下可以的,还要就是注意焦点,让QLineEdit一直获得焦点,代码都给你了,分多点吧

QLINEEDIT 类里的方法

int cursorPosition() const

void setSelection(int, int)

QString selectedText() const

找到想取出的字符串,设置选中,再用selectedText取出,

或者可以研究一下QTextCursor

QTextCursor cursor(ui->textEdit->textCursor())//

可以获取光标位置,移动光标等等


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11545460.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存