Seite 1 von 2

kein .Visible bei mehrseitigem Dialog ?

Verfasst: Fr, 15.06.2012 17:21
von RainerHH
ich versteh etwas nicht,
wenn ich ein Feld auf .Visible=False setze und dann den Dialog starte, ist alles ok, das Feld ist unsichtbar.
wenn vor dem Start die .Step Angabe benutze, ist das Feld nicht unsichtbar (das Feld hat Step 1).
OO 173.jpg
OO 173.jpg (8.32 KiB) 2788 mal betrachtet
hat jemand ne Idee?

Re: kein .Visible bei mehrseitigem Dialog ?

Verfasst: Fr, 15.06.2012 17:31
von RainerHH
ich glaube man kann einen Eintrag nicht löschen, schade...

die Reihenfolge wars, erst die .Model.Step Anweisung, dann .Visible.

Re: kein .Visible bei mehrseitigem Dialog ?

Verfasst: Fr, 15.06.2012 20:22
von RainerHH
verhält sich doch etwas merkwürdig das Ganze:
nach

oDlg.Model.Step = 1
cLstEdit.Visible = False
oDlg.Execute()

ist das Feld cLstEdit nicht sichtbar, korrekt

wenn ich dann aber mit

oDlg.Model.Step = 2
eine andere Seite aufrufe und von dort mit

oDlg.Model.Step=1
wieder auf die erste Seite zurück gehe, dann ist das Feld sichtbar!

Da scheint ne Macke in OOo zu sein, wenn ich nach der Rückkehr den Wert abfrage, steht er auf False, trotzdem wird das Feld angezeigt.

Re: kein .Visible bei mehrseitigem Dialog ?

Verfasst: Fr, 15.06.2012 21:25
von balu
Hallo RainerHH,

mach mal bitte ne Beispieldatei woraus man dein Problem ersehen kann. Irgendwie werd ich aus deiner Schilderung nicht so recht schlau.



Gruß
balu

Re: kein .Visible bei mehrseitigem Dialog ?

Verfasst: Fr, 15.06.2012 21:29
von Stephan
Da scheint ne Macke in OOo zu sein, wenn ich nach der Rückkehr den Wert abfrage, steht er auf False
und welcher Wert? Der über das model des Dialogs gewonnene oder uber das view?

Welche konkrete Art von Steuerelement?


Gruß
Stephan

Re: kein .Visible bei mehrseitigem Dialog ?

Verfasst: Fr, 15.06.2012 23:05
von RainerHH
es geht darum, dass gesetzte .Visible Werte nach einem Switch auf eine andere Seite (Step) nicht mehr vorhanden sind.

Re: kein .Visible bei mehrseitigem Dialog ?

Verfasst: Fr, 15.06.2012 23:30
von turtle47
Hallo,
Da scheint ne Macke in OOo zu sein
Nö, das glaube ich nicht.
Man kann das so erklären, dass bei Dir beim besagtem Kontrollelement bei Seite(Step) eine 0 (null) eingetragen ist.
Eigenschaften.jpg
Eigenschaften.jpg (33.69 KiB) 2744 mal betrachtet
Der Wert Null bedeutet, dass das Kontrollelement auf allen Seiten des Dialoges zu sehen ist.
Bei einem Switch des Dialoges wird dieser Wert gelesen und das Kontrollelement erscheint wieder.
Entweder Du setzt den Wert fest auf eine Seite, zum Beispiel 2, oder Du machst eine Abfrage wie folgt

Code: Alles auswählen

	.....
If Dlg_XYZ.Model.Step = 2 then
		cLstEdit.Visible = False
		else
		cLstEdit.Visible = True
.....
Jürgen

Re: kein .Visible bei mehrseitigem Dialog ?

Verfasst: Fr, 15.06.2012 23:41
von RainerHH
wie kommst Du denn darauf, ich hatte doch geschrieben, das Element hat Step 1 !?

oDlg.Model.Step = 1
cCommandButton3.Visible = False ' cmdButton3 has Step 1 in Dialog Side 1
oDlg.execute() ' show Side 1, cmdButton3 is invisible, OK

in an proc after click an force side button:
oDlg.Model.Step = 2 ' show Side 2

in an proc after click an return button:
oDlg.Model.Step = 1 ' go back to Side 1, now cmdButton3 is visible, FALSE !

Re: kein .Visible bei mehrseitigem Dialog ?

Verfasst: Fr, 15.06.2012 23:52
von Stephan
es geht darum, dass gesetzte .Visible Werte nach einem Switch auf eine andere Seite (Step) nicht mehr vorhanden sind.
exakt so hatte ich Dich auch verstanden und deshalb gefragt:
und welcher Wert? Der über das model des Dialogs gewonnene oder uber das view?

Welche konkrete Art von Steuerelement?
da Du ja auch davon sprachst das:
wenn ich nach der Rückkehr den Wert abfrage, steht er auf False, trotzdem wird das Feld angezeigt.


Gruß
Stephan

Re: kein .Visible bei mehrseitigem Dialog ?

Verfasst: Sa, 16.06.2012 00:09
von balu
Hallo RainerHH,

es scheint wohl sehr schwer zu sein der Bitte um eine Beispieldatei nachzukommen, oder? Stattdessen wiederholst Du nur schon gesagtes, was wirklich nicht hilfreich ist.

Wir können nicht wissen wie Du weder den Dialog, noch die einzelnen betroffenen Elemente programmiert hast. Die Rahmenbedingungen für dein beobachtetes "Fehlverhalten" steckt in deiner Datei, doch weder ich noch sonst einer besitzt hier Hellseherische Fähigkeiten um von hier aus in deine Datei zu schauen.


Ach ja, noch ne kleinigkeit.
Nicht jeder ist der englischen sprache mächtig. Also schreib Bitte in deutsch, um eventuelle missverständnisse zu vermeiden.



Gruß
balu

Re: kein .Visible bei mehrseitigem Dialog ?

Verfasst: Sa, 16.06.2012 01:04
von RainerHH
mach einfach das was ich geschrieben habe, ist doch wirklich nicht schwer und nicht kompliziert....

das bißchen Englisch versteht garantiert jeder!

Re: kein .Visible bei mehrseitigem Dialog ?

Verfasst: Sa, 16.06.2012 01:26
von Stephan
mach einfach das was ich geschrieben habe, ist doch wirklich nicht schwer und nicht kompliziert
Und hilft mir ja nun leider nicht weiter.
Ich jedenfalls kann aus der Existens des Objects cCommandButton3 (was ich ja aus dem von Dir geposteten Code entnehmen kann)nicht ersehen ob dieses sich auf das model oder den view des Dialogs bezieht, dazu brauchte ich den kompletten Code odeer die verbale Aussage von Dir.


Das war nun mein dritter Versuch Dir zu helfen, einen vierten werde ich ohne DEine Unterstützung nachgefragte Informationen zu liefern nicht unternehmen, weil ich erstens ohne notwendige Informationen in haltlich nicht Konkretes anworten kann und ich es zweitens leid bin Dich anzubetteln um Dir helfen zu können, denn nicht ich sondern Du bist es der hier nach Hilfe fragt.

Ich frage mich im Übrigen was es für eine Taktik sein soll potentiellen Helfern hier über den Mund zu fahren, denn z.B. Balu hat Dich ja nichtmal angegriffen sondern fragt allein nach Informationen und wenn Dich das bereits nervt weiß ich nicht wie hier sinnvolle Ergebnisse entstehen sollen.


Gruß
Stephan

Re: kein .Visible bei mehrseitigem Dialog ?

Verfasst: Sa, 16.06.2012 01:40
von RainerHH
ist das so ausreichend?:

Code: Alles auswählen

REM  *****  BASIC  *****
Private oDlg As Object
Sub Main
	Dim cCommandButton1 As Object
	oDlg = CreateUnoDialog(DialogLibraries.Standard.Dialog1)
	oDlg.Model.Step = 1
	cCommandButton1 = oDlg.GetControl("CommandButton1")
	cCommandButton1.Visible = False
	oDlg.Execute()
End Sub



Sub ForceStep2
	oDlg.Model.Step = 2
End Sub

Sub GoBack
	oDlg.Model.Step = 1
End Sub
hier die Ergebnisse:
OO 174.jpg
OO 174.jpg (10.87 KiB) 2710 mal betrachtet
OO 175.jpg
OO 175.jpg (9.09 KiB) 2710 mal betrachtet
OO 176.jpg
OO 176.jpg (11.84 KiB) 2710 mal betrachtet

Re: kein .Visible bei mehrseitigem Dialog ?

Verfasst: Sa, 16.06.2012 02:24
von balu
Hallo RainerHH,
mach einfach das was ich geschrieben habe, ist doch wirklich nicht schwer und nicht kompliziert....
Hatte ich hier für mich schon am 15.06.2012 um 20:47:59 gemacht. Und ich habe keine Probleme, und kann deins auch nicht nachvollziehen.

Und nun!? Was jetzt!?

das bißchen Englisch versteht garantiert jeder!
Auf eine Bitte so zu reagieren nenn ich einfach: Arrogant.

ist das so ausreichend?:
Nö, nicht wirklich!
Zu welcher Seite sind denn die einzelnen Elemente (CommandButton) zugeordnet?
Welche Ereignisse hängen an welchem Element?
......???

Einfacher und wirklich hilfreicher wäre die Datei gewesen. Aber nun gut, Du willst ja nicht.

Code: Alles auswählen

Sub Main
   Dim cCommandButton1 As Object
Da würde ich jetzt mal folgendes sagen: Das kann ja nicht gut gehn!
Begründung ist hier zu finden: Welche Gültigkeit haben Variablen?



Gruß
balu

Re: kein .Visible bei mehrseitigem Dialog ?

Verfasst: Sa, 16.06.2012 02:37
von RainerHH
was meinst Du mit Datei ?

die .bas oder die .xdl oder beide, ist kein Problem mach ich

irgendwie schaff ich es nicht die Dateien hochzuladen !?