Форум программистов, компьютерный форум CyberForum.ru

Изменение радиус вектора, программа не хочет откликаться на виджет слайдер - C++

Восстановить пароль Регистрация
 
Евгений 123
0 / 0 / 0
Регистрация: 06.05.2014
Сообщений: 16
07.07.2014, 13:40     Изменение радиус вектора, программа не хочет откликаться на виджет слайдер #1
доброго времени суток , проблема в том что программа не хочет откликаться на виджет слайдер
C++
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
#include 
cpp
"mainwindow.h"
#include "ui_mainwindow.h"
#include <QtGui>
 
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    QTimer *timer = new QTimer(this);
    connect(timer, SIGNAL(timeout()), this, SLOT(update()));
    timer->start(1000);
    ui->setupUi(this);
    setWindowTitle(tr("локатор"));
    connect (ui->Slider, SIGNAL(valueChanged(int)),this, SLOT(rangeEdit(int)));// сигнал и слот слайдера
}
 
MainWindow::~MainWindow()
{
    delete ui;
}
 
void MainWindow::rangeEdit (int x)
{
 
    E=x;
}
 
void MainWindow ::paintEvent(QPaintEvent *)
 {
 
E=200; // начальное значение
 
    static const QPoint minuteHand[3] =
    {
        QPoint(1,8),
        QPoint(-1, 8),
        QPoint(0, -E)// именно это значение нужно поменять слайдером
    };
 
 
    QColor minuteColor(0, 100, 12, 200);
 
    int side = qMin(width(), height());
    QTime time = QTime::currentTime();
 
    QPainter painter(this);
    painter.setRenderHint(QPainter::Antialiasing);
    painter.translate(width()/2, height()/2);
 
 
    painter.setPen(Qt::NoPen);
    painter.setBrush(minuteColor);
 
    painter.save();
    painter.rotate( 6 * (time.second()));
    painter.drawConvexPolygon(minuteHand,3);
    painter.restore();
 
    painter.setPen(minuteColor);
 
}
 
 void MainWindow::on_frame_2_destroyed()
{
     QImage(QString::fromUtf8("://../Users/evgeny/Pictures/pr1.jpg"));
 
    // QBrush br(QImage("://../Users/evgeny/Pictures/pr1.jpg"));
     QPalette plt = this->palette();
     plt.setBrush(QPalette::Background);
     this->setPalette(plt);
}
h

C++
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
#include<QtCore>
#include<QtGui>
#include <QWidget>
#include <QGraphicsView>
#include <QGraphicsScene>
 
#include <QMainWindow>
 
namespace Ui {
class MainWindow;
}
 
class MainWindow : public QMainWindow
{
    Q_OBJECT
 
public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();
    void paintEvent(QPaintEvent *event);
    int E; //создали переменную Е чтобы изменять значения 
 
 
private:
    Ui::MainWindow *ui;
 
protected:
 
public slots:
    void on_frame_2_destroyed();
    void rangeEdit(int x);
private slots:
 
};
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.07.2014, 13:40     Изменение радиус вектора, программа не хочет откликаться на виджет слайдер
Посмотрите здесь:

Не хочет запускаться программа C++
C++ программа с двумерным массивом не хочет работать
C++ Не работает программа. Не хочет читать файл
C++ программа не хочет видеть код функции
Программа if-else (координаты и радиус круга) C++
Вычислить площать S, радиус R треугольника, если заданы сторона, угол, радиус описанного круга C++
C++ Изменение размера созданного вектора
C++ Изменение содержимого вектора из лямбда функции

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dzrkot
zzzZZZ...
 Аватар для dzrkot
516 / 346 / 53
Регистрация: 11.09.2013
Сообщений: 1,977
07.07.2014, 14:01     Изменение радиус вектора, программа не хочет откликаться на виджет слайдер #2
по-моему Е=200 надо в конструктор, а не в paintEvent
а сам слот то срабатывает? поставьте туда qDebug()<<"SLOT!"
Евгений 123
0 / 0 / 0
Регистрация: 06.05.2014
Сообщений: 16
07.07.2014, 14:14  [ТС]     Изменение радиус вектора, программа не хочет откликаться на виджет слайдер #3
сам слот срабатывает , проверял его на другом виджете но вот с моим так и не хочет ...
Yandex
Объявления
07.07.2014, 14:14     Изменение радиус вектора, программа не хочет откликаться на виджет слайдер
Ответ Создать тему
Опции темы

Текущее время: 09:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru