Anzeige:
Ergebnis 1 bis 8 von 8

Thema: QT/KDE Zusammenspiel evtl doppelposting verzeihung da neu hier

  1. #1
    Registrierter Benutzer Avatar von microdigi
    Registriert seit
    13.07.2002
    Ort
    Bad Soden-Salmuenster
    Beiträge
    104

    QT/KDE Zusammenspiel evtl doppelposting verzeihung da neu hier

    Zusammenspiel zwischen QT-designer und KDE-code.

    Ich habe ein dialog-widget erstellt, in dem mehrere buttons, listboxen...
    untergebracht sind. jedes dieser elemente hat natuerlich einen individuellen namen.
    ich kenne auch die dialog.ui.h datei, in dem slots/signale definiert werden koennen.

    das eigentlichen problemchen allerdings liegt ganz woanders.
    wenn ich von dem dialog eine eigene klasse ableite,
    dann muesste ich doch auch zugriff haben zu den darin befindlichen namen
    und widerum deren funktion(en), die sie von hause aus erbten.
    die dialog.h (wird ja beim compilieren erzeugt)
    beinhaltet alle instanzen aus meinem dialog layout.
    und diese *.h binde ich in meine eigene neu abgeleitete class mit ein (#include).

    syntaxmaessig kriege ich also auch die vererbung / verbindung zu meinem code hin,
    aber bei der laufzeit gibts einen segment-fehler zu einer beliebigen funktion eines dieser elemente.
    zb. listbox.clear() (oder listbox->clear() ).

    offensichtlich existiert das angsprochene element nicht, oder an einer unzugaenglichen stelle.

    wo mag mein denkfehler sein?

    absicht des programmcodes ist es,
    text aus einer datei auszulesen und dann in eine listbox des gesamt-dialogs einzustellen mit listbox.insertItem ("...").

    danke fuer jeden hinweis.

    gruss - digi (60++)

    ps: bin umgestiegen von VC-studio MFC auf linux.
    10 jahre m$ sind mehr als genug.

  2. #2
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Hi!

    Wenn es korrekt kompiliert und linkt ist das eigenartig.
    Segfaults beim Zugriff auf Dialogelement hatte ich noch nie.

    Hast du in deinem Konstructor den der Basisklasse angegeben?

    Code:
    MyDialog::MyDialog(QWidget* parent, const char* name, bool modal)
        : MyDialogBase(parent, name, modal)
    Auf Widgetelemente greift man immer mit -> zu, Widgets werden ja am Heap erzeugt (mit new), sonst wären sie am Ende des Konstructors nicht mehr da

    Wenn es weiterhin nicht geht, kannst du h und cpp deiner Klasse und das ui der Basisklasse als Attachment posten, dann seh ich mir das an.

    Noch eine Frage: verwendest du KDevelop oder das kapptemplate aus kdesdk?
    Oder handgeschrieben Makefiles?

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  3. #3
    Registrierter Benutzer Avatar von microdigi
    Registriert seit
    13.07.2002
    Ort
    Bad Soden-Salmuenster
    Beiträge
    104
    zunaechst mal herzlichen dank ob der fixen antwort.

    ich denke, ich habe einen artikel gefunden in der mitgelieferten kde-docu.
    den studiere ich gerade. scheint mir irgendwie logisch zu sein.

    ich habe aber etwas zeit damit, es brennt (noch) nicht.
    und ich nehme mir die zeit. habe naemlich festgestellt, dass man IMMER unter
    zeitdruck GESETZT wird, sofern man sich setzen laesst. und die zeit ist seit
    einigen monaten gewollt vorbei. und siehe da: es funktioniert auch.

    ich habe gerade den gesamten code eingemuellt,
    und ich starte nochmal durch. war ja nicht so viel.
    der dialog bleibt ja erhalten.

    ich habe suse 8.0,
    und ich nehme natuerlich das was am 'automatischsten' funktioniert,
    also keine hand- makes, die enden normalerweise im chaos
    bei einem groesseren projekt (wie es dieses verspricht zu werden:
    totale zugangs/berechtigungs/protokoll verwaltung).
    und ich staune nur, wer von wem kopiert hat mit dem ide.
    entweder m$ von den trolls oder umgekehrt.
    einige kinkerlitzchen beim handling koennte man noch aendern
    (bswp die anordnung der source code fenster schneller zugaenglich
    machen, und einen button zum direkten schliessen eines code-fensters),
    aber ich fuehle mich hier SOFORT heimisch. als wenn ich
    nie etwas anderes gemacht haette, als mit qt/kde zu programmieren.
    aber es war leider nicht so; ich habe ueber zehn jahre schwerste
    arbeit und bitterste erfahrung(en) mit dem m$-schrott hinter mir.
    und dabei zusaetzlich 1/4 mio mark eingebuttert.
    und ich denke, ich habe mein scherflein dazu beigetragen,
    dass es den 'leuten' in redmund gut geht- wuensche denen
    ein langes leben.

    du kannst deine gesamten ersparnisse darauf verwetten,
    dass ich garantiert wieder hierhin komme.


    gruss - digi
    0700MICRODIGI
    Geändert von microdigi (13-07-2002 um 15:30 Uhr)

  4. #4
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Original geschrieben von microdigi
    zunaechst mal herzlichen dank ob der fixen antwort.
    Pah, 1,5 Stunden nennt der fix

    Da hast meine normalen Antwortzeiten noch nicht gesehen


    und ich staune nur, wer von wem kopiert hat mit dem ide.
    entweder m$ von den trolls oder umgekehrt.
    einige kinkerlitzchen beim handling koennte man noch aendern
    (bswp die anordnung der source code fenster schneller zugaenglich
    machen, und einen button zum direkten schliessen eines code-fensters),
    Über Qt Designer al IDE kann ich gar nix sagen, ich fügde den Code immer erst in meiner Subklasse hinzu.
    Alte Gewohnheit von Qt2, da konnte man noch keinen Code in Designer eingeben
    Außerdem bearbeitet man dann seinenn Quellcode immer mir dem selben Editor.


    du kannst deine gesamten ersparnisse darauf verwetten,
    dass ich garantiert wieder hierhin komme.

    Freut mich zu hören

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  5. #5
    Registrierter Benutzer Avatar von microdigi
    Registriert seit
    13.07.2002
    Ort
    Bad Soden-Salmuenster
    Beiträge
    104
    Über Qt Designer al IDE kann ich gar nix sagen, ich füge den Code immer erst in meiner Subklasse hinzu.
    Alte Gewohnheit von Qt2, da konnte man noch keinen Code in Designer eingeben
    Außerdem bearbeitet man dann seinenn Quellcode immer mir dem selben Editor.
    da erzaehlst du mir nix neues,
    ich faende es 'irgendwie unheimlich', direkt in den designer
    noch code einzuhacken.
    m.e. MUSS das in die hose gehen; denn bei GROSSEN! projekten
    hat man m.e. schon 'gestern' den ueberblick verloren.
    und dann wird mit der heissen nadel gefummelt.

    deswegen hab ich ja auch die herausforderung:
    den code TOTAL zu trennen vom layout.
    der MFC war darin spitze - muss man anerkennen.
    aber ich denke, wenn ich den haken geschnallt habe,
    wie's hier geht, dann ist es hier besser -
    und nicht mit so vielen fallen durchsetzt (oder besser: durchwachsen).

    ich muss nur noch schnallen wie ich die widgets/objecte vom designer
    einfach aus dem code ansprechen kann.
    dann machts hier 'heureka'!

    Rentner66 (als Nebenberuf)
    'Fossil' der ersten IT-Stunde, weltweit manches 'ausgefressen'
    0173 1047 047
    Intel P4(686)-2,53 GHz, 1GB, 2x80 GB, 2xNW, Sound, CD-RW, DVD-DL-RW, ATI Radeon 9000,
    LINUX (SuSE-9.3-Prof -- KDEvelop-QT-Professional),
    after ten years m$ VS97: C++ & MFC > NO windows anymore! NEVER-EVER! :eek: ...
    e-commerce networker

  6. #6
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Für den Fall das du KDevelop vewendest, ist dieses Tutorial absolut Spitze:
    http://women.kde.org/projects/coding/tut_kdevelop/

    Aber ich denke, dass es auch ganz brauchbar ist, wenn man KDevelop nicht verwendet.

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  7. #7
    Registrierter Benutzer Avatar von microdigi
    Registriert seit
    13.07.2002
    Ort
    Bad Soden-Salmuenster
    Beiträge
    104
    schau mal, anaconda

    du hast mir sehr geholfen.
    und ich gebs irgendwann an irgendjemanden weiter.
    du kannst dir denken, dass ich das mit 63 schon oefter getan habe.

    ich bin jetzt ne weile weg.
    und zwar sonntag>mannheim, sonntagabend>hannover(zh), montag>zh, dienstag+mittwoch>halle,leipzig, donnerstag wieder frankfurt-main. noch drei monate.

    und so langsam werd ich mich da schon in die materie eintasten.

    ich schick dir dennoch mal den ganz rudimentaeren source code.
    ist ja noch nix geheimes drin.

    meine tendenz ging stets dahin,
    mit den besten zur verfuegung stehenden tools zu arbeiten,
    und davon mit den funktionen, die automatisch den kleinkram erledigen.
    was soll der geiz, wenn man 1000 euro irgendwo spart,
    und dadruch ein unzuverlaessiges produkt oder ein spaetes maedchen
    auf den markt wirft...

    irgendwann haeng ich dir mal mein cv ran.
    aber so viel vorab, ich war mit-creator einiger os's,
    einiger intelligenter terminals, und europa und die welt kennt mich -
    naja, nicht alle, aber wenigstens einige.
    und durch linz bin ich sogar oefter mit dem lastwagen durchgefahren.
    schoene strecke an der donau entlang von passau bis linz.wien.bratislave.kosice,...
    lastwagen? und dann programmieren?
    ja, ich hab die dinger verkauft, entwickelt, gebaut, hingefahren, installiert,
    ausgebildet, repariert, ...

    so, in der NAECHSTEN mail haengt der code.

    gruss - digi, der erst wieder donnerstag echt ins net schaut
    und am sonntag/montag abend vielleicht auch.
    Rentner66 (als Nebenberuf)
    'Fossil' der ersten IT-Stunde, weltweit manches 'ausgefressen'
    0173 1047 047
    Intel P4(686)-2,53 GHz, 1GB, 2x80 GB, 2xNW, Sound, CD-RW, DVD-DL-RW, ATI Radeon 9000,
    LINUX (SuSE-9.3-Prof -- KDEvelop-QT-Professional),
    after ten years m$ VS97: C++ & MFC > NO windows anymore! NEVER-EVER! :eek: ...
    e-commerce networker

  8. #8
    Registrierter Benutzer Avatar von microdigi
    Registriert seit
    13.07.2002
    Ort
    Bad Soden-Salmuenster
    Beiträge
    104

    habs geschnallt

    eigentlich ganz einfach. man wundert sich immer wieder...
    ...warum so einfache sachen nicht ganz einfach beschrieben werden.
    da werden theorien gewaelzt ohne ende.
    aber ein ganz einfaches beispiel waere besser.

    meine begeisterung fuer kde/qt/linux steigt jede stunde.
    Rentner66 (als Nebenberuf)
    'Fossil' der ersten IT-Stunde, weltweit manches 'ausgefressen'
    0173 1047 047
    Intel P4(686)-2,53 GHz, 1GB, 2x80 GB, 2xNW, Sound, CD-RW, DVD-DL-RW, ATI Radeon 9000,
    LINUX (SuSE-9.3-Prof -- KDEvelop-QT-Professional),
    after ten years m$ VS97: C++ & MFC > NO windows anymore! NEVER-EVER! :eek: ...
    e-commerce networker

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •