Eingabe aus SpinBox o.ä. auslesen

Alles rund um die Programmierung mit Qt
Antworten
doubleB
Beiträge: 11
Registriert: 16. Juli 2007 15:53

Eingabe aus SpinBox o.ä. auslesen

Beitrag von doubleB »

Hallo,
bin ein ziemlicher Neuling in Qt.
Habe ein kleines Widget programmiert, in das man Daten eingeben kann.

Hier mein Code:

Code: Alles auswählen

#include <QtGui>

class InputWidget : public QWidget
{
  public:
	InputWidget(QWidget *parent=0);
};

InputWidget::InputWidget(QWidget *parent) : QWidget(parent)
{
	setFixedSize(400,200); //Fenstergröße
	
	//-------------Labels------------------
	QLabel *datelbl = new QLabel(this);
	datelbl->setText("Datum/Zeit:	");
	QLabel *kmlbl = new QLabel(this);
	kmlbl->setText("Kilometer:	");
	QLabel *timelbl = new QLabel(this);
	timelbl->setText("Zeit:		");

	//-------------Cancel-PushButton-----------
	QPushButton *cancel = new QPushButton(tr("Abbrechen")); //cancel-Button
	cancel->setFont(QFont("Times",14)); //Schrift
	cancel->setFixedSize(100,40);

	//-------------Ok-Button-------------------
	QPushButton *ok = new QPushButton("OK");
	ok->setFont(QFont("Times",14,QFont::Bold));
	ok->setFixedSize(100,40);

	//-------------KM-SpinBox------------------
	QSpinBox *km = new QSpinBox(this);
	km->setValue(0);
	km->setRange(0,99);
	
	//-------------DateTimeEdit-------------
	QDateTimeEdit *datetime = new QDateTimeEdit(this);
	datetime->setDateTime(QDateTime::currentDateTime());
	datetime->setCalendarPopup(true);

	//------------TimeEdit------------------
	QTimeEdit *time = new QTimeEdit(this);
	

	//-------------Signale------------------
	connect(cancel,SIGNAL(clicked()),this,SLOT(close())); //Schließen, wenn Abbrechen gedrückt wird
	connect(ok,SIGNAL(clicked()),this,SLOT(close())); //Wenn OK gedrückt wird


	//--------------Layout------------------
	QGridLayout *grid = new QGridLayout(this); //Neues GridLayout über das ganze Fenster
	grid->addWidget(datelbl,1,1);
	grid->addWidget(datetime,1,2,1,2); //DateTime Position:1,2; Größe:1,2 (2 Spalten breit)
	grid->addWidget(kmlbl,2,1); //Kilometer-Label hinzufügen in 2/1
	grid->addWidget(km,2,2); //km-Eingabe hinzufügen in Reihe 2, Spalte 2
	grid->addWidget(timelbl,3,1); //time-Label hinzufügen
	grid->addWidget(time,3,2); //TimeEdit hinzufügen

	grid->addWidget(ok,4,2); //OK-Button hinzufügen
	grid->addWidget(cancel,4,3); //Cancel-Button hinzufügen
	
}
Das ist die Widgetklasse, das Hauptprogramm erstellt nur ein Widget daraus und ich denke, das ist nicht weiter wichtig.

Nun möchte ich die eingegebenen Daten gerne auslesen, bzw. in eine Textdatei speichern. Wie kann ich das machen?

Tut mir leid,wenn die Frage vielleicht schonmal gestellt wurde, aber ich habe hier nichts gefunden, das mir weiterhilft und auch die Qt-Referenz hilft mir nicht besonders in diesem Fall.

Ich benutze Qt 4.2 und C++.

Danke für Eure Hilfe!
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
doubleB
Beiträge: 11
Registriert: 16. Juli 2007 15:53

Beitrag von doubleB »

Ja, die habe ich gelesen, nur ich versteh trotzdem nicht ganz, wie ich das jetzt mache.

Und noch eine Frage:
Kann das alles im Konstruktor beschrieben werden?
Zuletzt geändert von doubleB am 16. Juli 2007 16:24, insgesamt 1-mal geändert.
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

int iValue = km->value()
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
doubleB
Beiträge: 11
Registriert: 16. Juli 2007 15:53

Beitrag von doubleB »

Ok und wie bau ich das jetzt in meinen Code ein. Geht das im Konstruktor des Widgets oder wie?
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

doubleB hat geschrieben:Ok und wie bau ich das jetzt in meinen Code ein. Geht das im Konstruktor des Widgets oder wie?
An der Stelle, an dem Du den Wert der Spinbox haben willst. km muss dann natürlich ein Klassenmember sein - aber das ist hier kein C++-Basics Forum :(
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
doubleB
Beiträge: 11
Registriert: 16. Juli 2007 15:53

Beitrag von doubleB »

Jap das stimmt :D
Also danke für deine Hilfe :-)
Antworten