AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Mehrseitigen Installer - Wie das GUI?
Thema durchsuchen
Ansicht
Themen-Optionen

Mehrseitigen Installer - Wie das GUI?

Ein Thema von geofranz01 · begonnen am 27. Feb 2008 · letzter Beitrag vom 27. Feb 2008
Antwort Antwort
Seite 1 von 2  1 2      
geofranz01

Registriert seit: 17. Jun 2007
72 Beiträge
 
Delphi 2007 Enterprise
 
#1

Mehrseitigen Installer - Wie das GUI?

  Alt 27. Feb 2008, 15:39
Hallo ,
Ich würde gern ein Installer für mein Projekt schreiben. Installaware, Innosetup und Co. scheiden aus, weil er viele Dinge registrieren und einrichten muss.
Die ganzen Rountinen(Installation, Deinstallation,..) sind kein Problem.
Doch wie mache ich jetzt die GUI?? Wenn ich alle Komponenten auf die Form packe und je nach aktuellem Fortschritt (Auswahl der Komponenten,...) unsichtbar mache, dürfte es ziemlich unübersichtlich werden. Soll ich Frames verwenden?? Oder die Bedienelemente lieber per Code erzeugen?? Oder gibt es andere Möglichkeiten? Was würdet ihr machen? Wie machen es die ganzen Assistenten und Setups?

Danke schonmal!
Max
  Mit Zitat antworten Zitat
Benutzerbild von patti
patti

Registriert seit: 20. Okt 2004
Ort: Mittelfranken
665 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Mehrseitigen Installer - Wie das GUI?

  Alt 27. Feb 2008, 15:56
Mach es einfach mit einem PageControl, bei dem du die einzelnen Reiter unsichtbar machst und "per Hand" zwischen den Seiten wechselst. So behälst du die Übersicht und es ist leicht zum Verwalten

Patti

Edit: Die Reiter kannst du bei den einzelnen TabSheets mit der Eigenschaft "TabVisible" sichtbar und unsichtabr machen.
Patrick Kreutzer
[Informatik-Student im 4. Semester]
http://www.patti-k.de/
  Mit Zitat antworten Zitat
Benutzerbild von Ralf Kaiser
Ralf Kaiser

Registriert seit: 21. Mär 2005
Ort: Wuppertal
932 Beiträge
 
Delphi 10.3 Rio
 
#3

Re: Mehrseitigen Installer - Wie das GUI?

  Alt 27. Feb 2008, 16:03
Zitat von geofranz01:
Ich würde gern ein Installer für mein Projekt schreiben. Installaware, Innosetup und Co. scheiden aus, weil er viele Dinge registrieren und einrichten muss.
Na ja, eigentlich sind Programme wie InnoSetup ja gerade dafür da Dinge einzurichten und zu registrieren. Wo liegt das Problem?

Wenn du sehr spezielle Aufgaben währen der Installation erledingen musst damm nimm InnoSetup für das "Drumherum" (also die Benutzeroberffläche) und lager deine speziellen Installationsaufgaben in eine DLL aus die von InnoSetup heraus aufgerufen wird. Bei den Beispielen zu InnoSetup wird auch gezeigt wie man Routinen aus DLLs in InnoSetup aufrufen kann.

Wir haben bei einem Projekt z.B. die Anforderung, dass der Benutzer eine bestimmte Registriernummer eingibt die dann per Internet aktiviert werden muss (dazu haben wir einen Webservice auf unserem Server). Diese ganzen Funktionen, inklusive eines kleinen Aktivierungsassistenten kommen dabei aus einer DLL. Der Rest, also Pfadeingabe, Programmgurppe erstellen usw, halt das übliche, wird von den Standardfunktionen von InnoSetup erledigt.

Ciao,
Ralf
Ralf Kaiser
  Mit Zitat antworten Zitat
Tyrael Y.

Registriert seit: 28. Jul 2003
Ort: Stuttgart
1.093 Beiträge
 
Delphi 2007 Professional
 
#4

Re: Mehrseitigen Installer - Wie das GUI?

  Alt 27. Feb 2008, 16:04
Also ich persönlich bin kein Freund von "ich mach mal eben das Control zur Laufzeit sichtbar/unsichtbar".

Ich habe mal an einem Projekt gearbeitet, wo sie alles mögliche auf PageControls und auf eine einzige Form gepackt haben. Am Anfang war das noch wohl recht übersichtlich. Nach und nach wurden es so viele Controls auf dieser Form/Pagecontrol(s), daß man zur Designzeit nicht mehr sagen konnte, welches Control zu welchen Aktionen/Funtionen gehört.

Auch kamen letzendlich ganz merkwürdige Nebenwirkungen, so daß Controls die zur Laufzeit eindeutig sichtbar hätten sein müssen, nicht sichtbar waren.



Mach es gleich schön und übersichtlich und zwar mit Frames.

Da hat man auf jedem Frame, genau die Elemente, die auch zusammen gehören und zusammen angezeigt werden.
Levent Yildirim
Erzeugung von Icons aus Bildern:IconLev
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#5

Re: Mehrseitigen Installer - Wie das GUI?

  Alt 27. Feb 2008, 16:05
In einem Projekt haben wir es einfach mit Frames gelöst: eine Button Frame, Image Frame und Client Frame. Die Client Frames selber sind dann einzelne Frame Ableitungen für die einzelnen Seiten, welche dann einfach weiter geschaltet bzw. instanziiert werden. Klappt recht gut und man kann alles vorher schön designen.

/EDIT: Bei uns waren Wizards innerhalb des Programmes, aber grundsätzlich unterscheiden die sich ja nicht gross von einem Installer.
  Mit Zitat antworten Zitat
Benutzerbild von patti
patti

Registriert seit: 20. Okt 2004
Ort: Mittelfranken
665 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: Mehrseitigen Installer - Wie das GUI?

  Alt 27. Feb 2008, 16:09
Das gleiche kann man doch auch mit PageControls machen Ich verstehe nicht, wo das Problem bei PageControls liegt. Einfach mehrere TabSheets machen und diese ganz normal designen. Für jeden Schritt ein eigenes Sheet. Dann nur noch Die Reiter unsichtbar machen und zur Laufzeit eben die Seiten wechseln (z.B. Bei einem Klick auf den Button "weiter"). Funktioniert doch genauso gut wie Frames, oder nicht?
Patrick Kreutzer
[Informatik-Student im 4. Semester]
http://www.patti-k.de/
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#7

Re: Mehrseitigen Installer - Wie das GUI?

  Alt 27. Feb 2008, 16:16
Schon allein da Frames jede in einer eigenen Unit liegen und damit eine recht aufgeräumte Datenkapselung bieten, wäre für mich ein Grund Frames zu bevorzugen anstatt mich durch eine digitale Papyrusrolle ohne Ende zu scrollen für die Bearbeitung eines Handler von der Seite x.
  Mit Zitat antworten Zitat
Tyrael Y.

Registriert seit: 28. Jul 2003
Ort: Stuttgart
1.093 Beiträge
 
Delphi 2007 Professional
 
#8

Re: Mehrseitigen Installer - Wie das GUI?

  Alt 27. Feb 2008, 16:19
Zitat von patti:
Das gleiche kann man doch auch mit PageControls machen Ich verstehe nicht, wo das Problem bei PageControls liegt. Einfach mehrere TabSheets machen und diese ganz normal designen. Für jeden Schritt ein eigenes Sheet. Dann nur noch Die Reiter unsichtbar machen und zur Laufzeit eben die Seiten wechseln (z.B. Bei einem Klick auf den Button "weiter"). Funktioniert doch genauso gut wie Frames, oder nicht?
Bei PageControls wären alle Controls geladen.
Bei Frames kann man genau den Frame den man gerade braucht erzeugen und dem Container-Control zuweisen.

Stell dir folgendes vor.
Du hast ein Formular das aus drei Bereichen besteht.
Links, Mitte, Rechts.
Zwischen diesen Bereichen befindet sich ein Splitter.
Jedes dieser Bereiche kann denselben Inhalt ja nach Aktion bekommen, es kann aber auch, verschiedene Inhalte bekommen.

Wie willst du das mit PageControls machen?
In jedem Bereich für jede mögliche Darstellung ein Tab erzeugen und somit alles mehrfach haben?

Viel einfacher ist es hier du machst deine Frames und zeigst sie dort an wo du willst.

Ganz einfach gesagt sind Frames wiederverwendbarer.
Levent Yildirim
Erzeugung von Icons aus Bildern:IconLev
  Mit Zitat antworten Zitat
geofranz01

Registriert seit: 17. Jun 2007
72 Beiträge
 
Delphi 2007 Enterprise
 
#9

Re: Mehrseitigen Installer - Wie das GUI?

  Alt 27. Feb 2008, 16:21
Danke für eure Antworten!!

Das mit der DLL in Inno-Setup klingt interessant. Muss ich mir merken!
Ich probiers aber erst einmal mit den mir empfohlenen Frames .


P.S.: Wie macht man die Tab-Leiste bei den Page-Control den eigentlich unsichtbar?
Und mal so aus interesse: Wie machen das die Setups und die Softwareentwickler z.B. bei Microsoft?? Gibts da eigentlich irgendwelche Regeln (abgesehen vom Styleguide)?
Max
  Mit Zitat antworten Zitat
Benutzerbild von patti
patti

Registriert seit: 20. Okt 2004
Ort: Mittelfranken
665 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: Mehrseitigen Installer - Wie das GUI?

  Alt 27. Feb 2008, 16:24
@Tyrael Y.: Ok, das ist natürlich ein gutes Argument Habe bisher noch nie Frames gebraucht, deswegen habe ich da nicht so die Erfahrung und das Wissen dazu

@:geofranz01: Du könntest natürlich die Tableiste auch sichtbar lassen, damit der Benutzer - egal wo er im Moment ist - zu jeder beliebigen Stelle springen kann.
Patrick Kreutzer
[Informatik-Student im 4. Semester]
http://www.patti-k.de/
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:37 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz