Seite 1 von 1
QAbstractSlider einbinden
Verfasst: 5. Januar 2012 14:50
von Markow
Hey Leute ich bin was Qt angeht noch völlig neu.
Ich meine ich kann durch Buttons Dinge füllen und ausrechnen lassen usw. aber der drecks Slider macht einfach nichts. Wie mus man den wo einbinden? Oder mus ich ein slot dafür erstellen und über ein Signal dem vorgeben was der zu tun hat?
Edit:
Ok die Dummheit ist heute wirklich grenzenlos!
Um in einem Fenster nach unten zu scrolllen schmeiss ich alles in eine QScrollArea. Leider ist die scrollbar aber grau und nicht benutzbar, obwohl viele Objekte nicht sichtbar sind.
Kann mir einer das Brett vor dem Kopf mal entfernen?

Re: QAbstractSlider einbinden
Verfasst: 5. Januar 2012 15:12
von franzf
Schau dir das widgetResizable Property von QScrollArea an. (Vor allem auch die Doku dazu)
Re: QAbstractSlider einbinden
Verfasst: 5. Januar 2012 15:23
von Markow
ich verstehs nicht....
Ich arbeite mit dem Qt Creator und möchte über eingabefenster ini-files erstellen. Bei gut 50 Eingaben pro Liste mus ich eben scrollen können. Warum ist das in einem Fenster eigentlich nicht integriert? Die Dokumentation knnte für mich chinesischer nicht sein gerade :/
wo finde ich hier die Lösung?
http://harmattan-dev.nokia.com/docs/lib ... zable-prop
Edit: WidgetResizable ist enabled.
Re: QAbstractSlider einbinden
Verfasst: 5. Januar 2012 15:33
von brax
Ich hab ne Vermutung, ist aber ohne Deinen Code schwer zu sagen. Du sagst, Du "schmeisst alles in eine QScrollArea". Könnte es sein, dass Du QScrollArea::setWidget mehrfach aufrufst? Wenn ja, dann landet nämlich nur das letzte Widget wirklich in der QScrollArea.
Könntest Du vielleicht etwas Code posten? Macht es einfacher...
Re: QAbstractSlider einbinden
Verfasst: 5. Januar 2012 15:44
von Markow
Tut mir leid für die Code Bombe
Code: Alles auswählen
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Randbedingungen</class>
<widget class="QMainWindow" name="Randbedingungen">
<property name="enabled">
<bool>true</bool>
</property>
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>668</width>
<height>722</height>
</rect>
</property>
<property name="maximumSize">
<size>
<width>20000</width>
<height>20000</height>
</size>
</property>
<property name="windowTitle">
<string>Grundlegende Randbedingungen</string>
</property>
<widget class="QWidget" name="centralwidget">
<widget class="QScrollArea" name="scrollArea">
<property name="geometry">
<rect>
<x>60</x>
<y>30</y>
<width>491</width>
<height>541</height>
</rect>
</property>
<property name="widgetResizable">
<bool>true</bool>
</property>
<widget class="QWidget" name="scrollAreaWidgetContents">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>489</width>
<height>539</height>
</rect>
</property>
<widget class="QLabel" name="Erdbeschleunigen">
<property name="geometry">
<rect>
<x>40</x>
<y>440</y>
<width>91</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>Erdbeschleunigung</string>
</property>
</widget>
<widget class="QLabel" name="Volumenstrom">
<property name="geometry">
<rect>
<x>40</x>
<y>360</y>
<width>91</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>Volumenstrom</string>
</property>
</widget>
<widget class="QLabel" name="m_3">
<property name="geometry">
<rect>
<x>260</x>
<y>240</y>
<width>81</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>Meter</string>
</property>
</widget>
<widget class="QLabel" name="m_9">
<property name="geometry">
<rect>
<x>260</x>
<y>520</y>
<width>81</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>MW</string>
</property>
</widget>
<widget class="QLabel" name="Vollastleistung">
<property name="geometry">
<rect>
<x>40</x>
<y>520</y>
<width>91</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>Leistung bei Volllast</string>
</property>
</widget>
<widget class="QLineEdit" name="FlowRate">
<property name="geometry">
<rect>
<x>140</x>
<y>360</y>
<width>113</width>
<height>20</height>
</rect>
</property>
</widget>
<widget class="QLabel" name="m_8">
<property name="geometry">
<rect>
<x>260</x>
<y>440</y>
<width>81</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>m/s²</string>
</property>
</widget>
<widget class="QLineEdit" name="FullLoadPower">
<property name="geometry">
<rect>
<x>140</x>
<y>520</y>
<width>113</width>
<height>20</height>
</rect>
</property>
</widget>
<widget class="QLabel" name="Speichervolumen">
<property name="geometry">
<rect>
<x>40</x>
<y>280</y>
<width>91</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>Speichervolumen</string>
</property>
</widget>
<widget class="QLabel" name="m_10">
<property name="geometry">
<rect>
<x>260</x>
<y>480</y>
<width>81</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>MW</string>
</property>
</widget>
<widget class="QLineEdit" name="storageVolume">
<property name="geometry">
<rect>
<x>140</x>
<y>280</y>
<width>113</width>
<height>20</height>
</rect>
</property>
</widget>
<widget class="QLineEdit" name="Head">
<property name="geometry">
<rect>
<x>140</x>
<y>240</y>
<width>113</width>
<height>20</height>
</rect>
</property>
</widget>
<widget class="QLineEdit" name="FullLoadHours">
<property name="geometry">
<rect>
<x>140</x>
<y>320</y>
<width>113</width>
<height>20</height>
</rect>
</property>
</widget>
<widget class="QLineEdit" name="FullLoadPower_2">
<property name="geometry">
<rect>
<x>140</x>
<y>480</y>
<width>113</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>0,85</string>
</property>
</widget>
<widget class="QLineEdit" name="DischargePosition">
<property name="geometry">
<rect>
<x>140</x>
<y>200</y>
<width>113</width>
<height>20</height>
</rect>
</property>
</widget>
<widget class="QLabel" name="Fallhohe">
<property name="geometry">
<rect>
<x>40</x>
<y>240</y>
<width>91</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>Fallhöhe</string>
</property>
</widget>
<widget class="QLabel" name="Wirkunggrad">
<property name="geometry">
<rect>
<x>40</x>
<y>480</y>
<width>91</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>Wirkungsgrad</string>
</property>
</widget>
<widget class="QLabel" name="LageOberbecken">
<property name="geometry">
<rect>
<x>40</x>
<y>160</y>
<width>91</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>Lage Oberbecken</string>
</property>
</widget>
<widget class="QLabel" name="m_5">
<property name="geometry">
<rect>
<x>260</x>
<y>320</y>
<width>81</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>h</string>
</property>
</widget>
<widget class="QLabel" name="Erdbeschleunigung">
<property name="geometry">
<rect>
<x>40</x>
<y>400</y>
<width>91</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>Dichte Wasser</string>
</property>
</widget>
<widget class="QLineEdit" name="DenceWater">
<property name="geometry">
<rect>
<x>140</x>
<y>400</y>
<width>113</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>981</string>
</property>
</widget>
<widget class="QLabel" name="m_7">
<property name="geometry">
<rect>
<x>260</x>
<y>400</y>
<width>81</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>kg/m³</string>
</property>
</widget>
<widget class="QLineEdit" name="ProjectName">
<property name="geometry">
<rect>
<x>270</x>
<y>30</y>
<width>211</width>
<height>20</height>
</rect>
</property>
</widget>
<widget class="QLabel" name="m">
<property name="geometry">
<rect>
<x>260</x>
<y>160</y>
<width>81</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>Meter über NN</string>
</property>
</widget>
<widget class="QLabel" name="m_2">
<property name="geometry">
<rect>
<x>260</x>
<y>200</y>
<width>91</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>Meter über NN</string>
</property>
</widget>
<widget class="QLabel" name="m_4">
<property name="geometry">
<rect>
<x>260</x>
<y>280</y>
<width>81</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>m³</string>
</property>
</widget>
<widget class="QLabel" name="label_1">
<property name="geometry">
<rect>
<x>40</x>
<y>30</y>
<width>221</width>
<height>16</height>
</rect>
</property>
<property name="text">
<string>Geben Sie hier den Namen des Projektes ein</string>
</property>
</widget>
<widget class="QLabel" name="Bittegeben_2">
<property name="geometry">
<rect>
<x>40</x>
<y>100</y>
<width>281</width>
<height>16</height>
</rect>
</property>
<property name="text">
<string>Bitte geben Sie die Randbedingungen Einheitskonform ein</string>
</property>
</widget>
<widget class="QLabel" name="m_6">
<property name="geometry">
<rect>
<x>260</x>
<y>360</y>
<width>81</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>m³/s</string>
</property>
</widget>
<widget class="QLabel" name="LageUnterbecken">
<property name="geometry">
<rect>
<x>40</x>
<y>200</y>
<width>91</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>Lage Unterbecken</string>
</property>
</widget>
<widget class="QLineEdit" name="ReservoirPosition">
<property name="geometry">
<rect>
<x>140</x>
<y>160</y>
<width>113</width>
<height>20</height>
</rect>
</property>
</widget>
<widget class="QLineEdit" name="GravConstant">
<property name="geometry">
<rect>
<x>140</x>
<y>440</y>
<width>113</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>9,81</string>
</property>
</widget>
<widget class="QLabel" name="Vollaststunden">
<property name="geometry">
<rect>
<x>40</x>
<y>320</y>
<width>91</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>Vollaststunden</string>
</property>
</widget>
</widget>
</widget>
</widget>
<widget class="QStatusBar" name="statusbar"/>
<widget class="QMenuBar" name="menuBar">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>668</width>
<height>20</height>
</rect>
</property>
<widget class="QMenu" name="menuDatei">
<property name="title">
<string>Datei</string>
</property>
<addaction name="actionSpeichern"/>
<addaction name="actionSchlie_en"/>
</widget>
<addaction name="menuDatei"/>
</widget>
<action name="actionSpeichern">
<property name="text">
<string>Speichern</string>
</property>
</action>
<action name="actionSchlie_en">
<property name="text">
<string>Schließen</string>
</property>
</action>
</widget>
<resources/>
<connections/>
</ui>
Es sind wie gesagt einfach nur Labels und LineEdit in der Scroll Area...ich will ja nur dass wenn ich ein Fenster 400*400 aufrufe ich die Dinge die nicht draufpassen durch scrollen sehen und nutzen kann...
Hier ein Bild ..
[url=http://imageshack.us/photo/my-imag ... .jpg[/img][/url]
Re: QAbstractSlider einbinden
Verfasst: 5. Januar 2012 16:22
von Markow
Kann geschlossen werden...Lösung war Rechtklick auf die Scroll Area und dann Layout-> tabelarisch anordnen....unfasbar, aber ich habe nirgends rauslesen können, dass man so das scrollen aktiiert.
Sorry für unnötiges Nerven, aber vielleicht hilft dieser Thread einem anderen Trottel so wie mir
Wobei danach alles so festgesetzt ist, dass es bestimmt nicht die beste Lösung ist. Aber wenigstens kann man jetzt scrollen...was ja ohne tabellarische Anordnung nicht gin
Re: QAbstractSlider einbinden
Verfasst: 5. Januar 2012 17:39
von franzf
Das liegt nicht an QScrollArea, sondern am sizeHint des anzuzeigenden Widgets. Im sizeHint steckt die Info, wie groß das Widget angezeigt werden will. Ohne Layout "schweben" deine Formuilarelemente einfach über dem scrollAreaWidget, letzteres hat einfach seine fixe Größe - basta. Erst durch das anordnen der Formularelemente in einem Layout (welches im scrollAreaWidget liegt) bekommt die ScrollArea den korrekten sizeHint für die Einrichtung der ScrollBars.
////
Und hätte ich doch auch hier auf Code bestanden, hätte sich die ganze Diskussion abkürzen lassen

(und hätte wieder eine Karmapunkt weniger

)