• 10125阅读
  • 7回复

[讨论]qt中达到点击编辑框弹出软键盘 [复制链接]

上一主题 下一主题
离线_jason
 

只看楼主 倒序阅读 楼主  发表于: 2014-06-19
       本小白第一次发帖,最近在做arm板上做一个小项目。苦于板子没有键盘输入,于是就想做一个虚拟键盘来实现输入。
实际上就是一个StackedWidget上两个页面的切换
首先我重写了QLineEdit类,对其中的focusI你Event函数重写,当该编辑框获得焦点时发送一个编辑信号。


这里要注意一点是:当编辑框获得焦点后发送信号后要释放这个焦点,要不然会一直发送这个信号,另外把事件给父部件。
不然编辑框里的箭头就不会出现,我感觉核心就是这里吧。
楼主用了大量的信号与槽的连接,其他的都比较简单了,直接上效果图吧。。




楼主大二,由于项目需要接触了一学期的QT,是个菜鸟,虽然这些东西很简单,也捉摸了挺久,所以向把它发出来
让自己以后可以看一下,如果有需要的也希望可以帮助到你们
默默地努力,从未被超越
离线dbzhang800

只看该作者 1楼 发表于: 2014-06-19
恩,不错。
离线_jason

只看该作者 2楼 发表于: 2014-06-19
回 dbzhang800 的帖子
dbzhang800:恩,不错。 (2014-06-19 10:29) 

没有吧,感觉投机取巧了
默默地努力,从未被超越
离线qqqwh

只看该作者 3楼 发表于: 2014-08-16
请教一下,按键上的2和ABC怎么才能放一块儿?
离线_jason

只看该作者 4楼 发表于: 2014-11-10
回 qqqwh 的帖子
qqqwh:请教一下,按键上的2和ABC怎么才能放一块儿?
 (2014-08-16 14:03) 

那只是按钮上的图片,其实是不能输入字母的
默默地努力,从未被超越

只看该作者 5楼 发表于: 2015-06-01
为什么我按你的写 点击lineedit还是弹不出键盘呢 我的代码是这样的
#include <QDialog>
//#include"mylineedit.h"
DialogNetSettings.h
namespace Ui {
    class DialogNetSettings;
}

class DialogNetSettings : public QDialog
{
    Q_OBJECT

public:
    explicit DialogNetSettings(QWidget *parent = 0);
    ~DialogNetSettings();

private:
    Ui::DialogNetSettings *ui;

private slots:
    void on_pushButton_4_clicked();
    void on_pushButton_3_clicked();
    void keyBoard();//tanchu 弹出键盘,输入IP

};
DialogNetSettings.h
DialogNetSettings::DialogNetSettings(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::DialogNetSettings)
{
    ui->setupUi(this);

    connect(ui->ipEdit, SIGNAL(editSignal()), this, SLOT(keyBoard()));
  //  DialogKey *key = new DialogKey(this);
  //  key->setWindowFlags(Qt::WindowStaysOnTopHint);
  //  key->showFullScreen();
  //  key->setFocus();
}
DialogNetSettings::~DialogNetSettings()
{
    delete ui;

}

void DialogNetSettings::on_pushButton_3_clicked()
{
    ui->stackedWidget->setCurrentIndex(0);
}

void DialogNetSettings::on_pushButton_4_clicked()
{
    ui->stackedWidget->setCurrentIndex(1);
}
void DialogNetSettings::keyBoard()
{
    DialogKey *key = new DialogKey(this);
    key->setWindowFlags(Qt::WindowStaysOnTopHint);
    key->showFullScreen();
    key->setFocus();
}
离线等会

只看该作者 6楼 发表于: 2016-07-12
能给个源代码参考参考么?
离线felix_

只看该作者 7楼 发表于: 01-14
楼主,我最近也有个小项目需要在arm板子上做,请问能将你的这个例程发给我参考一下么,如果行的话,发到244033490@qq.com,感激不尽
快速回复
限100 字节
 
上一个 下一个