Bjr,

je cherche à compiler le (petit) programme suivant:

fichier finddialog.h
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
 
#ifndef FINDDIALOG_H
#define FINDDIALOG_H
 
#include <QDialog>
 
class QCheckBox;
class QLabel;
class QLineEdit;
class QPushButton;
 
class FindDialog : public QDialog
{
    Q_OBJECT
 
public:
    FindDialog(QWidget *parent = 0);
 
signals:
	void findNext(const QString& str,Qt::CaseSensivity cs);
	void findPrevious(const QString & str,Qt::CaseSensivity cd );
 
private slots:
	void findClicked();
	void enableFindButton(const QString & text);
 
 
private:
    QLabel* label;
    QLineEdit* lineEdit;
    QCheckBox* caseCheckBox;
    QPushButton* findButton;
    QPushButton* closeButton;
 
};
 
#endif // FINDDIALOG_H
fichier finddialog.cpp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
#include <QtGui>
#include "finddialog.h"
 
FindDialog::FindDialog(QWidget *parent)
    : QDialog(parent)
{
	label=new QLabel("Find &what:");
	lineEdit=new QLineEdit;
	label->setBuddy(lineEdit);
 
	caseCheckBox=new QCheckBox("Match &Case");
	backwardCheckBox=new QCheckBox("Search &backward");
 
	findButton=new QPushButton("&Find");
	findButton->setDefault(true);
	findButton->setEnabled(false);
 
	closeButton=new QPushButton("Close");
 
	connect(lineEdit,SIGNAL(textChanged(const QString &)),
			this,SLOT(enableFindButton(const QString &)));
	connect (findButton,SIGNAL(clicked()),
			this, SLOT(findClicked()));
	connect(closeButton,SIGNAL(clicked()),
			this,SLOT(close()));
 
 
	QHBoxLayout* topLeftLayout=new QHBoxLayout;
	topLeftLayout->addWidget(label);
	topleftLayout->adWidget(lineEdit);
 
	QVBoxLayout* leftLayout = new QVBoxLayout;
	leftLayout->addLayout(topLeftLayout);
	leftLayout->addWidget(caseCheckBox);
	leftLayout->addWidget(backwardCheckBox);
 
	QVBoxLayout* rightLayout = new QVBoxLayout;
	rightLayout->addWidget(findButton);
	rightLayout->addWidget(closeButton);
	rightLayout->addStretch();
 
	QHBoxLayout* mainLayout=new QHBoxLayout;
	mainLayout->addLayout(leftLayout);
	mainLayout->addLayout(leftLayout);
	mainLayout->addLayout(rightLayout);
	setLayout(mainLayout);
 
 
}
 
 
void FindDialog::findClicked(){
 
	QString text=lineEdit->text();
	Qt::CaseSensivity cs=caseCheckBox->isClicked() ? Qt::CaseSensitive : Qt::CaseInsensitive;
	if (backwardCheckBox->isChecked())
		emit findPrevious(text,cs);
	else
		emit findNext(text,cs);
 
}
 
void FindDialog::enableFindButton(const QString& text){
	findButton->setEnabled(!text.isEmpty());
 
}
fichier main.cpp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
#include <QApplication>
#include "finddialog.h"
 
int main(int argc,char* argv)
{
	QApplication app(argc,argv);
	FindDialog* dialog=new FindDialog;
	dialog->show();
	return app.exec();
 
 
}
je choisis open run dialog, je double clique sur C/C++ local application...

il me dis lorsque je cherche à compiler (en cliquant sur le marteau ou avec "run" : "make: no rule to make target all"

A noter et deuxième question: comment puis-je avoir la complétion de code , elle ne marchait pas lorsque j'ai écrit le programme (pourtant j'ai essayé d'ajouter les bibliothèques dans Project > Properties > Paths and symbols mais ça ne marche pas. Quelle est la démarche correcte= où dois-je ajouter les fichiers include?

merci,

lolveley.

PS: je précise que le programme est une boîte de dialogue qui permet d'indiquer une chaîne de car. que l'on cherche, la bpîte de dialogue étant une partie d'un projet.

PS2: je précise encore que le projet était du type "Qt GUI class", ce qui explique peut-être les problèmes que j'ai...