Форум программистов, компьютерный форум, киберфорум
C++ Qt
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 1
Регистрация: 06.09.2016
Сообщений: 26
1

Не могу поймать Enter

17.12.2016, 18:21. Просмотров 898. Ответов 2
Метки нет (Все метки)


Не получается никак поймать enter, даже пытался сделать через LeftButton,не могу понять в чем проблема...

*.cpp
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include "mainwindow.h"
#include <QApplication>
#include <QTextEdit>
#include <QtWidgets>
#include <QHBoxLayout>
 
int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    MainWindow *window = new MainWindow;
    window->show();
       return app.exec();
 
}
*.h
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include<QApplication>
#include<QtCore>
#include <QMainWindow>
#include <QLineEdit>
#include <QtWidgets>
#include <QHBoxLayout>
#include <QVector>
#include <QGridLayout>
#include <QMouseEvent>
 
class MainWindow : public QMainWindow
{
    Q_OBJECT
 
public:
    QLineEdit* lineEdit;
    QTextEdit *textEdit;
    QString str;
    QPushButton *button=new QPushButton("Convert");
    int i=0;
    MainWindow()
    {
              QWidget *centralWidget = new QWidget(this);
              setCentralWidget(centralWidget);
              textEdit=new QTextEdit;
              QVBoxLayout *layout = new QVBoxLayout();
              centralWidget->setLayout(layout);
              lineEdit = new QLineEdit();
              layout->addWidget(lineEdit);
              layout->addWidget(button);
              layout->addWidget(textEdit);
              checkOpPerf();
 
    }
    ~MainWindow(){}
 
    checkOpPerf()
    {
    lineEdit->clear();
    }
 
    void keyPressEvent  ( QKeyEvent * event )
        {
          if(event->key() == Qt::Key_Enter)
          {
            textEdit->insertPlainText("Input:");
            textEdit->insertPlainText(lineEdit->text());
            textEdit->append("");
            str=lineEdit->text();
            lineEdit->clear();
 
          }
        }
    void mouseReleaseEvent ( QMouseEvent * event )
    {
    if(event->button() == Qt::RightButton)
    {
           if(i==1)
        {
            str=str.toLower();
            textEdit->insertPlainText("to lower:");
            textEdit->insertPlainText(str);
            textEdit->append("");
            i=0;
        }
           else
           {
               str=str.toUpper();
               textEdit->insertPlainText("TO UPPER:");
               textEdit->insertPlainText(str);
               textEdit->append("");
                i++;
           }
    }
    }
};
#endif // MAINWINDOW_H
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.12.2016, 18:21
Ответы с готовыми решениями:

Не могу поймать клик по заголовку tableWidget
QObject::connect(ui-&gt;table-&gt;horizontalHeader(), SIGNAL(QHeaderView::sectionClicked(int)), this ,...

Не могу поймать EConvertError
Здравствуйте, уважаемые! Не совсем проблема, но все же помогите понять. VCL-овские StrToInt и ему...

не могу поймать wifi
Бодрого всем времени суток! Есть проблемка. Не могу поймать wifi на ноутбуке acer aspire v3-571g....

Не могу поймать сообщение wm_copydata
Мне необходимо принять массив данных типа ushort от другого приложения. В С++ я принимал сообщения...

2
6918 / 5983 / 2710
Регистрация: 14.04.2014
Сообщений: 25,504
17.12.2016, 18:54 2
Событие получает элемент с фокусом. Вот там и лови.
0
Эксперт C
25465 / 15855 / 3390
Регистрация: 24.12.2010
Сообщений: 34,697
17.12.2016, 20:23 3
Лучший ответ Сообщение было отмечено Origamo как решение

Решение

Попробуй
C++ (Qt)
1
if(event->key() == Qt::Key_Enter || event->key() == Qt::Key_Return)
Добавлено через 1 час 25 минут
Origamo, Неужели попал? Это я в общем-то пальцем в небо...
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.12.2016, 20:23

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.

Не могу поймать сообщения с vk api
import vk_api from datetime import datetime from vk_api.longpoll import VkLongPoll, VkEventType...

Не могу поймать ответ от PerfectMoney на laravel
Здравствуйте! Подключил вручную PerfectMoney на Laravel, без пакетов. Ответы к скрипту должны...

Вирус который я не могу не как поймать!
Уважаемые Программисты и Компьюетрщики, прошу ваc помочь мне! Заранее извеняюсь если что то...

Не могу поймать событие (после выгрузки)
Дело такое, надо запустить скрипт после выгрузки из 1с, чтобы он некоторые моменты проверил и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.