qt焦点左右键切换问题,求大神指导!!

现在是这样的,假如说我的光标在状态通道一的地方,我现在按下键是改变里面的数值,但是我现在想按右键切换到右边的同一行的通道二的地方,现在我按右键是切换到通道一的下一列(就是转到了电荷处,那个地方)。

而且,我还想选定之后通过切换上下键的时候,不会修改我当前的值。

这个很简单!
line_edit_1->installEventFilter(this);
line_edit_2->installEventFilter(this);

bool LoginDialog::eventFilter(QObject *obj, QEvent *event)
{
if(obj == line_edit_1 || obj == line_edit_2)
{
if(event->type() == QEvent::KeyPress)
{
bool is_focus_1 = line_edit_1->hasFocus();
bool is_focus_2 = line_edit_2->hasFocus();

//将事件转化为键盘事件
QKeyEvent *key_event = static_cast<QKeyEvent *>(event);
if(key_event->key() == Qt::Key_Right)
{
if(is_focus_1)
{
focusNextChild();
line_edit_2->setFocus();
}
}
}
}

因为Qt本身的一些控件是有上、下、左、右,包括:Tab等 一些按键的事件,所以得屏蔽以后,自己实现!
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-06-22
从写状态通道1的右键事键,当状态通道1右键按下的时候,emit一个信号带当前index参数,你想在哪里接这个信号就在哪里接,比如这个信号在通道2的关闭接收,在关联槽的时候,获得鼠标。大概思路也就这样,你理一下!

qt当鼠标移动到上方时设置焦点
您要问的是qt当鼠标移动到上方时怎样设置焦点吗?按下Tab键进行设置。根据查询QWidget显示。1、首先按下Tab键或者Shift键+Tab键,点击一个窗口部件。2、接着按下一个键盘快捷键,使用鼠标滚轮。3、最后移动焦点到一个窗口,由应用程序决定窗口之中的哪个窗口部件获取该焦点即可。

qt下的qwidget框口怎么设置才能不吃焦点
1、用户按下Tab键(或者Shift键+Tab键)(或者有时是Enter键)。2、用户点击一个窗口部件。3、用户按下一个键盘快捷键。4、用户使用鼠标滚轮。5、用户移动焦点到一个窗口,并且应用程序必须决定窗口中的哪个窗口部件应该得到焦点。

qt中tab切换光标的实现原理
为需要接受Tab键输入焦点的控件设置 setFocusPolicy(Qt::TabFocus)。这会将控件设置为可以接受Tab键焦点。监听Tab键的按下事件。可以通过重写控件的 keyPressEvent(QKeyEvent *event) 方法来捕捉Tab键的按下事件。在Tab键按下事件中,获取当前拥有焦点的控件,然后使用 nextInFocusChain() 方法找到下一个可...

按下键盘的tab键,输入框的焦点就切换到下一个,这个效果怎么实现_百度...
在Windows中tab是切换下一个,,但是这个并不是所有都能实现的,,因为在程序编写中,控件都会有Table属性的选择,,指示用户能否通过Tab按键为控件提供焦点,,,如果刻意设置不能用tab提供焦点那按tab键就没反映了!!

QT中实现QlineEdit在输入时通过调用什么函数可以实现光标左右移动啊...
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_...

qt软键盘问题,使用问题
调出软键盘后 你的输入窗口就不在获得焦点了 所以不会输入 设置一下焦点就好了 linux下是不会有windows的api的 Qt的库完全可以替代大部分的windows api

Qt 设置控件焦点策略
在Qt编程中,setFocusPolicy(Qt::StrongFocus)是QWidget类的一个方法,用于设定控件的焦点策略。该策略允许控件通过键盘或鼠标操作获得并保持焦点,直至焦点被显式转移到其他控件。强焦点策略适用于那些需要持续与用户交互的控件。相反,"弱焦点"策略则允许控件通过键盘或鼠标操作获得焦点,但当用户进行其他操作...

在QT中如何给一个LineEdit添加一个click()信号,求大神帮帮忙,杜绝...
自定一个信号,安装一个事件过滤器,当获得焦点的时候发送这个信号!

QT设置无焦点窗体
把所有不想聚焦的控件,都设置上setFocusPolicy(Qt::NoFocus);另外,软键盘的制作,最好不用做画面的方式来做,或多或少都会有些问题的。最好的方式是用Qt做输入法程序,Qt源代码里面好象有个输入法例子。

键盘焦点是什么意思?
这就是键盘焦点。一般有键盘焦点的窗口有如下特征:主窗口位于最前面,也就是层叠窗口你能看见的第一个窗口,一般此窗口标题栏会被加亮;此窗口如果有类似EDIT等输入控件,那么会在EDIT控件有一个字符插入符(就是一闪一闪的这个竖线)一般键盘焦点还会停留在窗口的默认按钮上面,什么是默认按钮?就是我们...

相似回答