title image


Smiley Re: Leider ist Qt4 so neu, daß nur 1 handvoll Programmierer sich da auskenn
Hi,



Ui ist nicht definiert. Da hat der Compiler recht. Du willst also irgend Click-Event auswerten?



Hier mal ein kleines Beispiel von einem Recherche-Dialog, den ich gerade mache. Kannst herauslesen, was Du brauchst ;)



Der Code beansprucht keine Attribute wie: geil, schön, pfiffig oder sonst was, er will einfach nur funktionieren und mir auch erklären, wie Qt funkt :)



Ich habe eine Headerfile namens: FilterDlg.h







      

#ifndef FILTERDLG_H

#define FILTERDLG_H

#include <QDialog>



class QGroupBox;

class QComboBox;

class QLineEdit;

class QRadioButton;

class QPushButton;



class FilterDlg : public QDialog{

   Q_OBJECT

   

private slots:

   void clearclick();

   void okclick();

    

private:

   QGroupBox    *fr1;

   QComboBox    *cColumn;

   QGroupBox    *fr2;

   QComboBox    *cOperator;

   QGroupBox    *fr3;

   QLineEdit    *cWert;

   QGroupBox    *fr4;

   QRadioButton *optAnd;

   QRadioButton *optOr;

   QGroupBox    *fr5;

   QComboBox    *cColumn2;

   QGroupBox    *fr6;

   QComboBox    *cOperator2;

   QGroupBox    *fr7;

   QLineEdit    *cWert2;

   QGroupBox    *fr8;

   QRadioButton *optAnzahl;

   QRadioButton *optActTab;

   QRadioButton *optNewTab;

   QLineEdit    *cNeuName;

   QPushButton  *ok;

   QPushButton  *clearit;

  

public:

   FilterDlg(QWidget *parent);   

};

#endif 



Code eingefügt mit Syntaxhighlighter 3.0







Und schließlich natürlich dazu die Filterdlg.cpp:



A C H T U N G: Spitze Klammern wurden entfernt!!!



#include "FilterDlg.h"

#include QGridLayout

#include QHBoxLayout

#include QVBoxLayout

#include QGroupBox

#include windows.h

#include QRadioButton

#include QLineEdit

#include QComboBox

#include QPushButton

#include QStringList



void FilterDlg::okclick(){

MessageBoxA(NULL, "OK", "OK", 64);

};



void FilterDlg::clearclick(){



};



FilterDlg::FilterDlg(QWidget *parent){

QStringList qslop;

QStringList qslfld;



fr1 = new QGroupBox(this);

fr1->setTitle(tr("&Aus Spalte"));

fr1->setGeometry(5,5,150,38);

cColumn = new QComboBox(fr1);

cColumn->setGeometry(5,15,140,18);

fr2 = new QGroupBox(this);

fr2->setTitle(tr("&Operator"));

fr2->setGeometry(158,5,150,38);

cOperator = new QComboBox(fr2);

cOperator->setGeometry(5,15,140,18);

fr3 = new QGroupBox(this);

fr3->setTitle(tr("&Wert"));

fr3->setGeometry(311,5,150,38);

cWert = new QLineEdit(fr3);

cWert->setGeometry(5, 15, 140, 18);



fr4 = new QGroupBox(this);

fr4->setTitle(tr("Verknüpfen mit"));

fr4->setGeometry(5, 45, 457, 38);

optAnd = new QRadioButton(fr4);

optOr = new QRadioButton(fr4);

optAnd->setText(tr("&UND"));

optOr->setText(tr("&ODER"));

optAnd->setGeometry(180,15,50,18);

optOr->setGeometry(230,15,50,18);

clearit = new QPushButton(fr4);

clearit->setGeometry(355, 15, 100, 21);

clearit->setText(tr("Clear"));

QObject::connect(clearit, SIGNAL(pressed()), this, SLOT(clearclick()));



fr5 = new QGroupBox(this);

fr5->setTitle(tr("Aus Spalte"));

fr5->setGeometry(5,85,150,38);

cColumn2 = new QComboBox(fr5);

cColumn2->setGeometry(5,15,140,18);

fr6 = new QGroupBox(this);

fr6->setTitle(tr("Operator"));

fr6->setGeometry(158,85,150,38);

cOperator2 = new QComboBox(fr6);

cOperator2->setGeometry(5,15,140,18);

fr7 = new QGroupBox(this);

fr7->setTitle(tr("Wert"));

fr7->setGeometry(311,85,150,38);

cWert2 = new QLineEdit(fr7);

cWert2->setGeometry(5, 15, 140, 18);



fr8 = new QGroupBox(this);

fr8->setTitle(tr("Das Suchergebnis soll"));

fr8->setGeometry(5, 125, 150, 100);

optAnzahl = new QRadioButton(fr8);

optActTab = new QRadioButton(fr8);

optNewTab = new QRadioButton(fr8);

optAnzahl->setGeometry(5,15,140,18);

optAnzahl->setText("Nur Treffer melden");

optActTab->setGeometry(5,35,140,18);

optActTab->setText("Tabelle akualisieren");

optNewTab->setGeometry(5,55,140,18);

optNewTab->setText("In neue Tabelle, Name:");

cNeuname = new QLineEdit(fr8);

cNeuname->setGeometry(15, 75, 130, 18);

cNeuname->setEnabled(false);



ok = new QPushButton(this);

ok->setGeometry(360, 205, 100,21);

ok->setText(tr("&Start"));

ok->setAutoDefault(true);

QObject::connect(ok, SIGNAL(pressed()), this, SLOT(okclick()));



setFixedSize(465,235);

setWindowTitle(tr("Filter"));



qslop << "Enthält" << "Enthält nicht" <<

"Beginnt mit" << "Endet mit" <<

"Entspricht" << "Entspricht nicht";

cOperator->addItems(qslop);

cOperator2->addItems(qslop);







exec();

};





soweit mal. Irgendwann werde ich mal das Ganze verfeinern. Aber wie Du sagst: Qt4 ist

so neu, dass ...










geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: