找回密码
 立即注册

跳出QTableWidget,去当前界面中的其他控件(pushbutton)

发表于 2018-1-12 10:28:14 | 显示全部楼层 |阅读模式
1Qter豆
我用的是这种方法
void record_list::keyPressEvent(QKeyEvent *e)
{
if(e->key()==Qt::Key_Left)
    {
     if(system("find lockconfig.ini")==0)
         {
         qDebug()<<"get";
        int row = table->currentItem()->row();
        qDebug()<<row;
        QSettings *configIniRead = new QSettings("lockconfig.ini", QSettings::IniFormat);
        if(configIniRead->contains(table->item(row,3)->text())==true)//判断该键值是否存在
                {
                  lock_button->setText(tr("       解锁       "));
                 }
        else lock_button->setText(tr("       锁定       "));
        delete configIniRead;
          }
    lock_button->setFocus();
        }
if(e->key()==Qt::Key_Right)
    {
    return_button->setFocus();
    }
}

会出现焦点在item上移动到边上才能才能从table中出来,

附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册
回复

使用道具 举报

 楼主| 发表于 2018-1-12 10:30:22 | 显示全部楼层
使用这种方法捕获不到事件
void record_list::keyPressEvent(QKeyEvent *e)
{
    qDebug()<<"press key";
    if(e->key()==Qt::Key_F)
        {
        if(system("find lockconfig.ini")==0)
            {
            qDebug()<<"get";
           int row = table->currentItem()->row();
           qDebug()<<row;
           QSettings *configIniRead = new QSettings("lockconfig.ini", QSettings::IniFormat);
           if(configIniRead->contains(table->item(row,3)->text())==true)//判断该键值是否存在
                   {
                     lock_button->setText(tr("       解锁       "));
                    }
           else lock_button->setText(tr("       锁定       "));
           delete configIniRead;
             }
       lock_button->setFocus();
       qDebug()<<"F";
         }
    if(e->key()==Qt::Key_H)
        {
         return_button->setFocus();
         qDebug()<<"H";
        }
    if(e->key()==Qt::Key_T)
        {
            this->focusNextPrevChild(false);
          qDebug()<<"T";
         }
    if(e->key()==Qt::Key_G)
            {
            this->focusNextPrevChild(true);
           qDebug()<<"G";
            }
}
回复

使用道具 举报

 楼主| 发表于 2018-1-12 14:57:39 | 显示全部楼层
已经使用给表格添加过滤器的方式解决
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

houyongnan

    主题

    帖子

    3

    积分

    Qter1级会员

    Rank: 1

    积分
    3

Qter1级会员

发私信

Qt开源社区——开源 共享 自由

微信扫一扫
查看精品教程!