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

Qt Discussion :

problème de compilation


Sujet :

Qt

  1. #41
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 033
    Points : 13 968
    Points
    13 968
    Par défaut
    Citation Envoyé par Gulish Voir le message
    @ Mongaulois : Je ne sais vraiment pas quoi te dire, ça fait un moment que j'utilise qwt, et je ne mets pas ça dans mon .pro. Ensuite, je ne sais pas si je ne l'ai pas fait tout au début. Si tu dis que ça marche encore chez toi même quand tu l'enlèves.

    Enfin bref, le mystère reste entier.
    QWT_DLL sert normalement quand tu hérite d'une widget de qwt et que tu ajoute des signal/slot. Parfois faut pas cherche à comprendre . En plus ce n'est que pour windows. Jamais compris pourquoi.
    Mais bon perso, je préfère suivre ce que conseil la doc.

    En tout cas la compilation fonctionne. Je testerai ce soir pour confirmer avec visual express 2008.

  2. #42
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 23
    Points : 2
    Points
    2
    Par défaut
    Ca veu dire quoi ca?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    stdcall-fixup -Wl,-enable-auto-impor
     -Wl -Wl,-subsystem,windows -o debug
    debug/main.o debug/moc_HistogramItem
    -LC/Qt/qwt-5.1.1/lib -lqwt5 -lQtGuid
    \..\lib\gcc\mingw32\3.4.2\..\..\..\.
    
     returned 1 exit status
    [1]: *** [debug\TestGraphqueDemo.exe
    [1]: Leaving directory `C:/DocumentsqueDemo'
    : *** [debug] Error 2
    
     and Settings\louise\Mes documents\T
    car la compile ne veut toujours pas

  3. #43
    Membre éprouvé

    Profil pro
    Inscrit en
    Mai 2007
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Mai 2007
    Messages : 774
    Points : 969
    Points
    969
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LIBS += -LC/Qt/qwt-5.1.1/lib -lqwt5
    Hmm, tu n'as pas compris je crois : le modèle est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LIBS+= -L"LecheminDuDossier" -l"NomDeLaLibSansLe.a"
    Donc tu dois écrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LIBS += -LC:/Qt/qwt-5.1.1/lib -lqwt5
    G.
    Un problème avec Qt ? Vous trouverez votre réponse ici : http://doc.trolltech.com/4.6/overviews.html
    En français (traduction réalisée par l'équipe Qt de DVP) : http://qt.developpez.com/doc/4.6/vues-d-ensemble/

  4. #44
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 23
    Points : 2
    Points
    2
    Par défaut
    lol c'est vrai que ca marche mieux....!

    Bon déjà ca compile !!!!!
    Mais le .exe plante...

    Runtime error!

    Program: ...es documents\TstGaphqueDemo\debug\TestGraphqueDemo.exe

    This appliction has requested the Runtime to terminate it in an unusual way.
    Please contact the application's support team for more information


    c'est cool nan??lol

    en tt cas ca compile MERCI !!

  5. #45
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 23
    Points : 2
    Points
    2
    Par défaut
    Rhooo j'arrive pas a savoir prquoi mon .exe ne veut pas !!!

    vous avez déjà eu ce problème?? vous savez ce que c'est?

  6. #46
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 033
    Points : 13 968
    Points
    13 968
    Par défaut
    Citation Envoyé par personn02 Voir le message
    Rhooo j'arrive pas a savoir prquoi mon .exe ne veut pas !!!

    vous avez déjà eu ce problème?? vous savez ce que c'est?
    problème de dll.
    Il faut que ton exe est accés au dll qt et qwt.
    Normalement tu rajoute les chemin dans le PATH systeme.
    Sinon tu peut copier les dll et qwt à côté.

    Si ce n'est pas un problème de path.
    tu as compilé qwt en debug et release?
    tu as compilé histogramme en debug ou release?

  7. #47
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 23
    Points : 2
    Points
    2
    Par défaut
    tu as compilé qwt en debug et release?
    tu as compilé histogramme en debug ou release?
    Je ne sais pas comment on fait.

  8. #48
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 033
    Points : 13 968
    Points
    13 968
    Par défaut
    Citation Envoyé par personn02 Voir le message
    Je ne sais pas comment on fait.
    pou compiler qwt en debug et release je l'ai expliqué ici
    http://www.developpez.net/forums/d66...n/#post3927961

    Par defaut, qt compile en debug normalement.
    Ensuite, c'est
    make debug : pour compiler en debug
    make release : pour compiler en release

    Au vue de message, tu compile histogramme en debug en utilisant la version release de qwt. Et comme indiqué dans le doc
    # On Windows you can't mix release and debug libraries.

  9. #49
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 23
    Points : 2
    Points
    2
    Par défaut
    Bon alors j'ai fait pour qwt :

    - avec l'invite de commande de qt je fait make debug puis make release

    et pour mon programme de fait exactement la même chose et pourtant j'ai la même erreur... que faire ??

  10. #50
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 033
    Points : 13 968
    Points
    13 968
    Par défaut
    Citation Envoyé par personn02 Voir le message
    Bon alors j'ai fait pour qwt :

    - avec l'invite de commande de qt je fait make debug puis make release

    et pour mon programme de fait exactement la même chose et pourtant j'ai la même erreur... que faire ??
    tu as compiler la version debug avec la lib debug?
    Sinon tu as le même problème avec la version release?

  11. #51
    Membre éprouvé

    Profil pro
    Inscrit en
    Mai 2007
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Mai 2007
    Messages : 774
    Points : 969
    Points
    969
    Par défaut
    Tu devrais maintenant posséder 2 fichiers .a , à savoir qwt5.a et qwt5d.a (ou qwtd5.a je ne sais plus). Le "d" signifie debug.

    Donc quand tu compiles en release, tu dois utiliser qwt5.a.
    ------------------------- debug, --------------- qwt5d.a.

    Ensuite, as tu fait ce que l'on t'a dit, à savoir mettre les dlls à disposition des exécutables de ton application. Ton programme nécessite la dll pour s'exécuter. Tu as 2 solutions :
    1) changer ton PATH afin que ton application puisse trouver la dll qu'il veut
    2) copier le fichier .dll dans le même répertoire que l'executable de ton application

    G.
    Un problème avec Qt ? Vous trouverez votre réponse ici : http://doc.trolltech.com/4.6/overviews.html
    En français (traduction réalisée par l'équipe Qt de DVP) : http://qt.developpez.com/doc/4.6/vues-d-ensemble/

  12. #52
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 23
    Points : 2
    Points
    2
    Par défaut
    Tu les trouves où ces 2 fichiers??
    Si c'est dans qwt-5.1.1\lib ben il y a bien 2 fichiers mais c'est libqwt5.a et le .dll

    parcontre dans le dossier src j'ai 2 fichiers :
    - makefile.debug
    - makefile.release

    et même
    - object_script.qwt.debug
    - object_script.qwt.release

  13. #53
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 23
    Points : 2
    Points
    2
    Par défaut
    Nan c'est bon !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    Je vien de trouver un .exe dans le dossier release de mon programme car d'habitude j'utilisais le .exe dans le dossier debug de mon programme.

    Donc normalement c'est bon je vais pourvoir faire ce que je veux.

    je vais tout récapiluler des fois que je ne sois pas le seul à vouloir faire la même chose !!

    le Main :

    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
    #include <QtGui>
    #include <stdlib.h>
    #include <qapplication.h>
    #include <qpen.h>
    #include <qwt_plot.h>
    #include <qwt_plot_grid.h>
    #include <qwt_plot_marker.h>
    #include <qwt_interval_data.h>
    #include "histogramitem.h"
     
    int main(int argc, char **argv)
    {
        QApplication a(argc, argv);
     
        QwtPlot plot;
        plot.setCanvasBackground(QColor(Qt::white));
        plot.setTitle("Histogram");
     
        QwtPlotGrid *grid = new QwtPlotGrid;
        grid->enableXMin(true);
        grid->enableYMin(true);
        grid->setMajPen(QPen(Qt::black, 0, Qt::DotLine));
        grid->setMinPen(QPen(Qt::gray, 0 , Qt::DotLine));
        grid->attach(&plot);
     
        HistogramItem *histogram = new HistogramItem();
        histogram->setColor(Qt::darkCyan);
     
        const int numValues = 20;
     
        QwtArray<QwtDoubleInterval> intervals(numValues);
        QwtArray<double> values(numValues);
     
        double pos = 0.0;
        for ( int i = 0; i < (int)intervals.size(); i++ )
        {
            const int width = 5 + rand() % 15;
            const int value = rand() % 100;
     
            intervals[i] = QwtDoubleInterval(pos, pos + double(width));
            values[i] = value;
     
            pos += width;
        }
     
        histogram->setData(QwtIntervalData(intervals, values));
        histogram->attach(&plot);
     
        plot.setAxisScale(QwtPlot::yLeft, 0.0, 100.0);
        plot.setAxisScale(QwtPlot::xBottom, 0.0, pos);
        plot.replot();
     
    #if QT_VERSION < 0x040000
        a.setMainWidget(&plot);
    #endif
     
        plot.resize(600,400);
        plot.show();
     
        return a.exec();
    }
    le .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
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
    270
    271
    272
    273
    274
    275
    276
    277
    278
    279
    280
    #include <qstring.h>
    #include <qpainter.h>
    #include <qwt_plot.h>
    #include <qwt_interval_data.h>
    #include <qwt_painter.h>
    #include <qwt_scale_map.h>
    #include "histogramitem.h"
     
    class HistogramItem::PrivateData
    {
        public:
        int attributes;
        QwtIntervalData data;
        QColor color;
        double reference;
    };
     
    HistogramItem::HistogramItem(const QwtText &title): QwtPlotItem(title)
    {
        init();
    }
     
    HistogramItem::HistogramItem(const QString &title): QwtPlotItem(QwtText(title))
    {
        init();
    }
     
    HistogramItem::~HistogramItem()
    {
        delete d_data;
    }
     
    void HistogramItem::init()
    {
        d_data = new PrivateData();
        d_data->reference = 0.0;
        d_data->attributes = HistogramItem::Auto;
     
        setItemAttribute(QwtPlotItem::AutoScale, true);
        setItemAttribute(QwtPlotItem::Legend, true);
     
        setZ(20.0);
    }
     
    void HistogramItem::setBaseline(double reference)
    {
        if ( d_data->reference != reference )
        {
            d_data->reference = reference;
            itemChanged();
        }
    }
     
    double HistogramItem::baseline() const
    {
        return d_data->reference;
    }
     
    void HistogramItem::setData(const QwtIntervalData &data)
    {
        d_data->data = data;
        itemChanged();
    }
     
    const QwtIntervalData &HistogramItem::data() const
    {
        return d_data->data;
    }
     
    void HistogramItem::setColor(const QColor &color)
    {
        if ( d_data->color != color )
        {
            d_data->color = color;
            itemChanged();
        }
    }
     
    QColor HistogramItem::color() const
    {
        return d_data->color;
    }
     
    QwtDoubleRect HistogramItem::boundingRect() const
    {
        QwtDoubleRect rect = d_data->data.boundingRect();
        if ( !rect.isValid() )
            return rect;
     
        if ( d_data->attributes & Xfy )
        {
            rect = QwtDoubleRect( rect.y(), rect.x(),
                rect.height(), rect.width() );
     
            if ( rect.left() > d_data->reference )
                rect.setLeft( d_data->reference );
            else if ( rect.right() < d_data->reference )
                rect.setRight( d_data->reference );
        }
        else
        {
            if ( rect.bottom() < d_data->reference )
                rect.setBottom( d_data->reference );
            else if ( rect.top() > d_data->reference )
                rect.setTop( d_data->reference );
        }
     
        return rect;
    }
     
     
    int HistogramItem::rtti() const
    {
        return QwtPlotItem::Rtti_PlotHistogram;
    }
     
    void HistogramItem::setHistogramAttribute(HistogramAttribute attribute, bool on)
    {
        if ( bool(d_data->attributes & attribute) == on )
            return;
     
        if ( on )
            d_data->attributes |= attribute;
        else
            d_data->attributes &= ~attribute;
     
        itemChanged();
    }
     
    bool HistogramItem::testHistogramAttribute(HistogramAttribute attribute) const
    {
        return d_data->attributes & attribute;
    }
     
    void HistogramItem::draw(QPainter *painter, const QwtScaleMap &xMap,
        const QwtScaleMap &yMap, const QRect &) const
    {
        const QwtIntervalData &iData = d_data->data;
     
        painter->setPen(QPen(d_data->color));
     
        const int x0 = xMap.transform(baseline());
        const int y0 = yMap.transform(baseline());
     
        for ( int i = 0; i < (int)iData.size(); i++ )
        {
            if ( d_data->attributes & HistogramItem::Xfy )
            {
                const int x2 = xMap.transform(iData.value(i));
                if ( x2 == x0 )
                    continue;
     
                int y1 = yMap.transform( iData.interval(i).minValue());
                int y2 = yMap.transform( iData.interval(i).maxValue());
                if ( y1 > y2 )
                    qSwap(y1, y2);
     
                if ( i < (int)iData.size() - 2 )
                {
                    const int yy1 = yMap.transform(iData.interval(i+1).minValue());
                    const int yy2 = yMap.transform(iData.interval(i+1).maxValue());
     
                    if ( y2 == qwtMin(yy1, yy2) )
                    {
                        const int xx2 = xMap.transform(
                            iData.interval(i+1).minValue());
                        if ( xx2 != x0 && ( (xx2 < x0 && x2 < x0) ||
                                              (xx2 > x0 && x2 > x0) ) )
                        {
                           // One pixel distance between neighboured bars
                           y2++;
                        }
                    }
                }
     
                drawBar(painter, Qt::Horizontal,
                    QRect(x0, y1, x2 - x0, y2 - y1));
            }
            else
            {
                const int y2 = yMap.transform(iData.value(i));
                if ( y2 == y0 )
                    continue;
     
                int x1 = xMap.transform(iData.interval(i).minValue());
                int x2 = xMap.transform(iData.interval(i).maxValue());
                if ( x1 > x2 )
                    qSwap(x1, x2);
     
                if ( i < (int)iData.size() - 2 )
                {
                    const int xx1 = xMap.transform(iData.interval(i+1).minValue());
                    const int xx2 = xMap.transform(iData.interval(i+1).maxValue());
     
                    if ( x2 == qwtMin(xx1, xx2) )
                    {
                        const int yy2 = yMap.transform(iData.value(i+1));
                        if ( yy2 != y0 && ( (yy2 < y0 && y2 < y0) ||
                                        (yy2 > y0 && y2 > y0) ) )
                        {
                            // One pixel distance between neighboured bars
                            x2--;
                        }
                    }
                }
                drawBar(painter, Qt::Vertical,
                    QRect(x1, y0, x2 - x1, y2 - y0) );
            }
        }
    }
     
    void HistogramItem::drawBar(QPainter *painter, Qt::Orientation, const QRect& rect) const
    {
       painter->save();
     
       const QColor color(painter->pen().color());
    #if QT_VERSION >= 0x040000
       const QRect r = rect.normalized();
    #else
       const QRect r = rect.normalize();
    #endif
     
       const int factor = 125;
       const QColor light(color.light(factor));
       const QColor dark(color.dark(factor));
     
       painter->setBrush(color);
       painter->setPen(Qt::NoPen);
       QwtPainter::drawRect(painter, r.x() + 1, r.y() + 1,
          r.width() - 2, r.height() - 2);
       painter->setBrush(Qt::NoBrush);
     
       painter->setPen(QPen(light, 2));
    #if QT_VERSION >= 0x040000
       QwtPainter::drawLine(painter,
          r.left() + 1, r.top() + 2, r.right() + 1, r.top() + 2);
    #else
       QwtPainter::drawLine(painter,
          r.left(), r.top() + 2, r.right() + 1, r.top() + 2);
    #endif
     
       painter->setPen(QPen(dark, 2));
    #if QT_VERSION >= 0x040000
       QwtPainter::drawLine(painter,
          r.left() + 1, r.bottom(), r.right() + 1, r.bottom());
    #else
       QwtPainter::drawLine(painter,
          r.left(), r.bottom(), r.right() + 1, r.bottom());
    #endif
     
       painter->setPen(QPen(light, 1));
     
    #if QT_VERSION >= 0x040000
       QwtPainter::drawLine(painter,
          r.left(), r.top() + 1, r.left(), r.bottom());
       QwtPainter::drawLine(painter,
          r.left() + 1, r.top() + 2, r.left() + 1, r.bottom() - 1);
    #else
       QwtPainter::drawLine(painter,
          r.left(), r.top() + 1, r.left(), r.bottom() + 1);
       QwtPainter::drawLine(painter,
          r.left() + 1, r.top() + 2, r.left() + 1, r.bottom());
    #endif
     
       painter->setPen(QPen(dark, 1));
     
    #if QT_VERSION >= 0x040000
       QwtPainter::drawLine(painter,
          r.right() + 1, r.top() + 1, r.right() + 1, r.bottom());
       QwtPainter::drawLine(painter,
          r.right(), r.top() + 2, r.right(), r.bottom() - 1);
    #else
       QwtPainter::drawLine(painter,
          r.right() + 1, r.top() + 1, r.right() + 1, r.bottom() + 1);
       QwtPainter::drawLine(painter,
          r.right(), r.top() + 2, r.right(), r.bottom());
    #endif
     
       painter->restore();
    }
    le .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
    /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
     * Qwt Widget Library
     * Copyright (C) 1997   Josef Wilgen
     * Copyright (C) 2002   Uwe Rathmann
     *
     * This library is free software; you can redistribute it and/or
     * modify it under the terms of the Qwt License, Version 1.0
     *****************************************************************************/
     
    #ifndef HISTOGRAMITEM_H
    #define HISTOGRAMITEM_H
     
    #include <QtGui>
    #include <qglobal.h>
    #include <qcolor.h>
     
    #include "qwt_plot_item.h"
     
    class QwtIntervalData;
    class QString;
     
    class HistogramItem:public QObject, public QwtPlotItem
    {
        Q_OBJECT
     
        public:
        explicit HistogramItem(const QString &title = QString::null);
        explicit HistogramItem(const QwtText &title);
        virtual ~HistogramItem();
     
        void setData(const QwtIntervalData &data);
        const QwtIntervalData &data() const;
     
        void setColor(const QColor &);
        QColor color() const;
     
        virtual QwtDoubleRect boundingRect() const;
     
        virtual int rtti() const;
     
        virtual void draw(QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRect &) const;
     
        void setBaseline(double reference);
        double baseline() const;
     
        enum HistogramAttribute
        {
            Auto = 0,
            Xfy = 1
        };
     
        void setHistogramAttribute(HistogramAttribute, bool on = true);
        bool testHistogramAttribute(HistogramAttribute) const;
     
        protected:
        virtual void drawBar(QPainter *,Qt::Orientation o, const QRect &) const;
     
        private:
        void init();
     
        class PrivateData;
        PrivateData *d_data;
    };
     
    #endif
    penser bien a compiler qwt de la manière suivante :
    1 - qmake qwt.pro
    make

    Puis pour les exemples :

    cd examples
    qmake examples.pro
    make
    make install

    Puis faire :
    make debug
    make release

    et faire la même chose avec son programme

    puis lancer son prog depuis le dossier release !!!

    si j'ai fais des erreurs dite le moi

    en tout cas merci a tous !!!!!!!!!!!!!!!!!!!!!!
    et merci messieur le forum d'exister!!!!




  14. #54
    Membre éprouvé

    Profil pro
    Inscrit en
    Mai 2007
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Mai 2007
    Messages : 774
    Points : 969
    Points
    969
    Par défaut
    T'as oublié de cliquer sur .

    Y'a plus qu' à ... comme on dit. J'ai le pressentiment qu'on va rentendre parler de toi dans pas longtemps .

    Bon courage,

    G.
    Un problème avec Qt ? Vous trouverez votre réponse ici : http://doc.trolltech.com/4.6/overviews.html
    En français (traduction réalisée par l'équipe Qt de DVP) : http://qt.developpez.com/doc/4.6/vues-d-ensemble/

+ Répondre à la discussion
Cette discussion est résolue.
Page 3 sur 3 PremièrePremière 123

Discussions similaires

  1. problème de compilation sous visual C++
    Par fabmili dans le forum MFC
    Réponses: 4
    Dernier message: 08/02/2004, 20h52
  2. problème de compil devc++ socket
    Par stefdem dans le forum Autres éditeurs
    Réponses: 2
    Dernier message: 11/12/2003, 12h33
  3. Réponses: 1
    Dernier message: 29/10/2003, 13h16
  4. Problème de compilation de la DLL du XMLRad
    Par [DreaMs] dans le forum XMLRAD
    Réponses: 2
    Dernier message: 16/04/2003, 17h46
  5. Réponses: 1
    Dernier message: 27/05/2002, 02h44

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