IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

[eclipse CDT,Qt] pas de complétion


Sujet :

C++

  1. #1
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2006
    Messages
    958
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 958
    Points : 213
    Points
    213
    Par défaut [eclipse CDT,Qt] pas de complétion
    Bonjour,

    je voudrais savoir comment ajouter de la complétion de code C++ à eclipse, que j'utilise avec Qt; voici le code de spreadsheet.cpp et spreadsheet.h; ces deux fichiers sont ceux d'un tableur (spreadsheet en anglais), la classe spreadsheet hérite de QTableWidget, contrôle gérant une grille de données.

    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
     
    #include <QtGui>
    #include "cell.h"
    #include "spreadsheet.h"
     
    Spreadsheet::Spreadsheet(QWidget* parent):QTableWidget(parent)
        {
        autoRecalculate=true;
        setItemPrototype(new Cell);
        setSelectionMode(ContiguousSelection);
        connect(this,SIGNAL(itemChanged(QTableWidgetItem*)),this,
    	    SLOT(somethingChanged()));
        clear();
     
     
        }
     
    void spreadsheet::clear()
        {
        setRowCount(0);
        setColumnCount(0);
        setRowCount(RowCount);
        setColumnCount(ColumnCount);
     
        for (int i=0;i<Column;i++)
    	{
    	QTableWidgetItem* item=new QTableWidgetItem;
    	item->setText(QString(QChar('A'+i)));
    	setHorizontalHeaderItem(i,item);
     
    	}
        setCurrentCell(0,0);
        }
    et spreadsheet.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
    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
     
    #ifndef SPREADSHEET_
    #define SPREADSHEET_
    #include <QTableWidget>
     
    class Cell;
    class SpreadsheetCompare;
     
    class Spreadsheet:public QTableWidget
        {
        Q_OBJECT
     
    public:
        Spreadsheet(QWidget* parent=0);
        bool autoRecalculate() const {return autoRecalculate;}
        QString currentLocation() const;
        QString currentFormula() const;
        QTableWidgetSelectionRange selectedRange() const;
        void clear();
        bool readFile(const QString& fileName);
        bool writeFile(const QString & fileName);
        void sort(const SpreadsheetCompare & compare);
     
        public slots:
        void cut();
        void copy();
        void paste();
        void del();
        void selectCurrentRow();
        void setCurrentColumn();
        void recalculate();
        void setAutoRecalculate();
        void findNext(const QString &str,Qt::CaseSensitivity cs);
        void findPrevious(const QString& str,Qt::CaseSensitivity cs);
     
        signals:
        void modified();
     
        private slots:
        void somethingChanged();
     
        private:
    	enum {MagicNumber=0x7F51C883,rowCount=999,ColumnCount=26};
    	Cell* cell(int row,int column) const;
    	QString text(int row,int column) const;
    	QString formula(int row,int column) const;
    	void setFormula(int row,int column,const QString& formula);
    	bool autoRecalculate;
     
     
     
        };
     
    class SpreadsheetCompare
        {
    public:
        bool operator()(const QStringList& row1,const QStringList& row2) const;
        enum {KeyCount=3};
        int Keys[KeyCount];
        bool ascending[KeyCount];
     
     
     
        };
     
     
     
    #endif /*SPREADSHEET_*/

    le truc particulier c'est que ces deux fichiers sont dans le sous-répertoire "spreadsheet" du projet, pas dans le répertoire principal.

    je n'ai pas la complétion et ça m'embête bien, est-ce qu'eclipse interrompt la complétion si une inclusion est non valable(en effet, le fichier cell.h n'existe pas encore).

    lolveley.

  2. #2
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2006
    Messages
    958
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 958
    Points : 213
    Points
    213
    Par défaut
    pas de réponse... je précise que c'est important je trouve, la complétion; ça économise bcp de déboguage!

    lolveley.

  3. #3
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2006
    Messages
    958
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 958
    Points : 213
    Points
    213
    Par défaut
    laissez tomber, j'ai copié mes classes dans un autre projet (un projet console Qt), et tout est rentré dans l'ordre.
    je pense que je fichier .pro était corrompu.

    lolveley.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Eclipse 3.6.1] Pas de complétion
    Par aldo-tlse dans le forum Eclipse Java
    Réponses: 9
    Dernier message: 12/10/2010, 11h24
  2. Réponses: 2
    Dernier message: 26/06/2008, 22h20
  3. [eclipse CDT, Qt] eclipse ne trouve pas le fichier .h
    Par olivier57b dans le forum Eclipse C & C++
    Réponses: 7
    Dernier message: 16/06/2008, 20h16
  4. [eclipse europa, CDT]pas de complétion avec (ou sans) Qt
    Par olivier57b dans le forum Eclipse C & C++
    Réponses: 1
    Dernier message: 03/08/2007, 21h17
  5. [jonas]eclipse ne trouve pas le plugin
    Par Stessy dans le forum Eclipse Java
    Réponses: 5
    Dernier message: 17/07/2007, 12h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo