DCTABPAGE positionieren
Moderator: Moderatoren
- Manfred
- Foren-Administrator
- Beiträge: 21192
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
DCTABPAGE positionieren
Hi,
bei mehreren TabPages werden diese über RELATIVE positioniert. Geht das auch irgendwie anders, ohne feste Koordinaten eingeben zu müssen? Bei den anderen Parts geht das ja z.B. über DCGUI_ROW, DCGUI_COL usw. Ich möchte die Möglichkeit haben TabPages mittendrin zu deaktivieren im Quellcode, wenn sie nicht benötigt werden. Da ich aber bei Relative den Vorgänger angeben muß, wäre das zusätzliche Tipparbeit den jedesmal zu ändern, wenn der nicht eingebunden wäre.
bei mehreren TabPages werden diese über RELATIVE positioniert. Geht das auch irgendwie anders, ohne feste Koordinaten eingeben zu müssen? Bei den anderen Parts geht das ja z.B. über DCGUI_ROW, DCGUI_COL usw. Ich möchte die Möglichkeit haben TabPages mittendrin zu deaktivieren im Quellcode, wenn sie nicht benötigt werden. Da ich aber bei Relative den Vorgänger angeben muß, wäre das zusätzliche Tipparbeit den jedesmal zu ändern, wenn der nicht eingebunden wäre.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Koverhage
- Der Entwickler von "Deep Thought"
- Beiträge: 2470
- Registriert: Fr, 23. Dez 2005 8:00
- Wohnort: Aalen
- Hat sich bedankt: 102 Mal
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
Re: DCTABPAGE positionieren
Hallo Manfred,
habe es noch nicht probiert, aber wenn HIDE = .t., müsste es doch automatisch gehen.
habe es noch nicht probiert, aber wenn HIDE = .t., müsste es doch automatisch gehen.
Gruß
Klaus
Klaus
- Manfred
- Foren-Administrator
- Beiträge: 21192
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: DCTABPAGE positionieren
Hi Klaus,
Du warst ne Sekunde früher als ich. Das mit dem Hide habe ich gerade probiert. Hat den Nachteil, dass dann eine Lücke entsteht.
Du warst ne Sekunde früher als ich. Das mit dem Hide habe ich gerade probiert. Hat den Nachteil, dass dann eine Lücke entsteht.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9361
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 101 Mal
- Danksagung erhalten: 361 Mal
- Kontaktdaten:
Re: DCTABPAGE positionieren
Damit keine Lücke entsteht, musst Du Pre-/Postoffset "manuell" setzen (bzw. berechnen). Eigentlich "wissen" Tabpages nicht voneinander, sie reagieren nur mit einer Minimierung der "Kollegen", wenn eine Tabpage den Focus bekommt. Schau Dir einfach mal das Beispiel in der Beschreibung der XbpTabpage-Klasse an.
Herzlich,
Tom
Tom
- Manfred
- Foren-Administrator
- Beiträge: 21192
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: DCTABPAGE positionieren
Hi Tom,
das mit dem Post/Preoffset habe ich schon mal gelesen, aber irgendwie nicht verstanden.
das mit dem Post/Preoffset habe ich schon mal gelesen, aber irgendwie nicht verstanden.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9361
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 101 Mal
- Danksagung erhalten: 361 Mal
- Kontaktdaten:
Re: DCTABPAGE positionieren
Hallo, Manfred.
Pre- und Postoffset bestimmen Position und Größe der Tab-Lasche, also des Bereichs, in dem sich die Caption befindet. Es sind Prozentwerte bezogen auf die Breite der Tab. Preoffset auf 10 bedeutet, dass eine Tab, die 100 Pixel breit ist, ihre Lasche 10 Pixel vom linken Rand entfernt zeigt. Bei einer Breite von 400 Pixeln wären es 40.
Pre- und Postoffset bestimmen Position und Größe der Tab-Lasche, also des Bereichs, in dem sich die Caption befindet. Es sind Prozentwerte bezogen auf die Breite der Tab. Preoffset auf 10 bedeutet, dass eine Tab, die 100 Pixel breit ist, ihre Lasche 10 Pixel vom linken Rand entfernt zeigt. Bei einer Breite von 400 Pixeln wären es 40.
Herzlich,
Tom
Tom
- Manfred
- Foren-Administrator
- Beiträge: 21192
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: DCTABPAGE positionieren
Hm,
ich habe das gerade mal probiert. Muß das jetzt bei jedem Tab eingegeben werden? Ich verstehe die Rechenweise nicht.
Was muß beim 1. angegeben werden? Was muß dann bei den folgenden draufgerechnet werden, damit es trotzdem klappt, wenn ein Tab zwischendurch nicht im Code aktiviert wurde? Bei mir verschwinden die Tabs irgendwohin außerhalb der gewollten Stelle.
ich habe das gerade mal probiert. Muß das jetzt bei jedem Tab eingegeben werden? Ich verstehe die Rechenweise nicht.
Was muß beim 1. angegeben werden? Was muß dann bei den folgenden draufgerechnet werden, damit es trotzdem klappt, wenn ein Tab zwischendurch nicht im Code aktiviert wurde? Bei mir verschwinden die Tabs irgendwohin außerhalb der gewollten Stelle.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Manfred
- Foren-Administrator
- Beiträge: 21192
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: DCTABPAGE positionieren
OK, machen wir es mal einfacher:
wo müßte denn jetzt was eingefügt werden? Wenn ich es mache, kommt nur Unsinn dabei heraus.
Code: Alles auswählen
oDialogZusatz:nOben += 10 + oDialogZusatz:nRahmenKopfHoehe
@ oDialogZusatz:nOben,oDialogZusatz:nLinks DCTABPAGE oDialogZusatz:oTabAdresse;
CAPTION "Adresse";
EVAL {|o| AAdd(oDialogZusatz:aTabpages,o) };
GOTFOCUS {|| SetAppFocus(oAdresse:oName1) };
SIZE DCGUI_PARENTWIDTH - 10,DCGUI_PARENTHEIGHT - oDialogZusatz:nOben;
TABHEIGHT oDialogZusatz:nTabHoehe;
TABWIDTH oDialogZusatz:nTabBreite
@ 0,0 DCTABPAGE oDialogZusatz:oTabKontakte;
CAPTION "Kontakte";
EVAL {|o| AAdd(oDialogZusatz:aTabpages,o)};
RELATIVE oDialogZusatz:oTabAdresse
@ 0,0 DCTABPAGE oDialogZusatz:oTabKonditionen1;
CAPTION "Konditionen1";
EVAL {|o| AAdd(oDialogZusatz:aTabpages,o)};
RELATIVE oDialogZusatz:oTabKontakte
@ 0,0 DCTABPAGE oDialogZusatz:oTabKonditionen2;
CAPTION "Konditionen2";
EVAL {|o| AAdd(oDialogZusatz:aTabpages,o)};
RELATIVE oDialogZusatz:oTabKonditionen1
@ 0,0 DCTABPAGE oDialogZusatz:oTabLieferbedingungen;
CAPTION "Lieferbedingungen";
EVAL {|o| AAdd(oDialogZusatz:aTabpages,o)};
RELATIVE oDialogZusatz:oTabKonditionen2
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Wolfgang Ciriack
- Der Entwickler von "Deep Thought"
- Beiträge: 2935
- Registriert: Sa, 24. Sep 2005 9:37
- Wohnort: Berlin
- Hat sich bedankt: 13 Mal
- Danksagung erhalten: 34 Mal
- Kontaktdaten:
Re: DCTABPAGE positionieren
Hi Manfred,
Frage: Warum willst du denn die Tabpages verstecken ?
Ich würde sie einfach nur disablen, wenn nicht darauf zugegriffen werden soll. Hat den Vorteil, das es immer gleich aussieht und er Kunde sieht, das da vielleicht noch was möglich wäre.
Frage: Warum willst du denn die Tabpages verstecken ?
Ich würde sie einfach nur disablen, wenn nicht darauf zugegriffen werden soll. Hat den Vorteil, das es immer gleich aussieht und er Kunde sieht, das da vielleicht noch was möglich wäre.
Viele Grüße
Wolfgang
Wolfgang
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9361
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 101 Mal
- Danksagung erhalten: 361 Mal
- Kontaktdaten:
Re: DCTABPAGE positionieren
Idee: Bestücke Deine Klasse "oDialogZusatz" mit einer iVar ":aShowTabs". Die Länge des Arrays bestimmt die Anzahl der später sichtbaren Tabs. In der "EVAL"-Klausel (nicht vorher, da die Objekte noch nicht existieren) jedes Tabs wird :aShowTabs[nWoBinIchGerade] das aktuelle (!) Tab-Objekt zugewiesen. In "RELATIVE" wird das jeweils vorige Objekt referenziert, also dasjenige, das sich an :aShowTabs[nWoBinIchGerade-1] befindet. Dann kannst Du die Anzeige der Tabs (das erste Tab ausgenommen!) einfach in IFs klammern, feddisch. Müsste eigentlich funktionieren, wenn ich keinen Codeblock-Fallstrick übersehen habe.
Herzlich,
Tom
Tom
- Manfred
- Foren-Administrator
- Beiträge: 21192
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: DCTABPAGE positionieren
Hi Wolfgang,
es soll eine Schablone werden, die aber nicht immer alles anzeigen darf.
es soll eine Schablone werden, die aber nicht immer alles anzeigen darf.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!