Seite 1 von 1

Position eines Dialoges

Verfasst: Sa, 22.03.2008 13:19
von ykcim
Hallo,

ich habe einen Dialog in dem ich einen zweiten Dialog aufrufe. Dieser erscheint dann nicht zentriert sondern in der rechten unteren Ecke. Ich habe dafür keine Erklärung. Der Code ist einfach. Und bei den Eigenschaften der Dialoge ist nichts eingestellt.

Code: Alles auswählen

Sub StartMain
  Dialoglibraries.Loadlibrary("Standard")
  MyDlg=CreateUnoDialog(Dialoglibraries.Standard.dlgStart)
  MyDlg.execute()
End Sub

Sub StartAdrDlg
  AdrDlg=CreateUnoDialog(Dialoglibraries.Standard.dlgAdress)
  AdrDlg.execute()  
End Sub
Hat jemand einen Tipp für mich?

mfg
Michael
OO 2.3.1 Windows XP
OO 2.2 Kubuntu

Re: Position eines Dialoges

Verfasst: Sa, 22.03.2008 15:16
von turtle47
Hallo Michael,
ykcim hat geschrieben: Hat jemand einen Tipp für mich?
Im Grunde leider nicht.

Ich habe Deine Vorgehensweise mal nachgebaut und kann das Problem nicht bestätigen.
Der zweite Dialog wird bei gleichen Einstellungen bei "Position X = 170" und "Position Y = 89"
etwas versetzt dargestellt.
Dialoge.jpg
Dialoge.jpg (8.68 KiB) 452 mal betrachtet
Arbeitest Du mit Dual-Monitoring?

Trotz des Problems wünsche ich Dir frohe Ostern.

Jürgen

Re: Position eines Dialoges

Verfasst: So, 23.03.2008 14:17
von ykcim
Hallo Jürgen,

dich Du hast mir das Problem bestätigt.
Wenn ich den Dialog kleiner mache wird er genauso versetzt angezeigt wie bei Dir. Da mein Dialog jedoch größer ist sieht es durch das Versetzen so aus als würde er rechts unten in der Ecke stehen. Mach mal den zweiten Dialog größer dann siehst Du es auch. Das heißt der zweite Dialog wird nicht mehr zentriert. Nur das Warum ist jetzt interessant.

mfg
Michael
Schöne Ostern!

Re: Position eines Dialoges

Verfasst: So, 23.03.2008 15:52
von turtle47
Hi Michael,

ok, Du hast Recht.
Der zweite Dialog orientiert sich immer an dem ersten.

Wenn Du z.B noch einen kleinen Dlg aus dem zweiten Dlg aurufst,
so wird dieser genau in der Mitte des aktiven Dlg angezeigt.


Versuche mal folgendes für den Aufruf des zweiten Dlg:

Code: Alles auswählen

Sub StartAdrDlg	
	myDlg.Visible=false 'ersten Dlg ausblenden
	AdrDlg=CreateUnoDialog(Dialoglibraries.Standard.dlgAdress)
	AdrDlg.execute()
	myDlg.Visible=True 'ersten Dlg wieder einblenden
End Sub
Ist zwar nicht schön, aber wenn es denn funktioniert. :lol:

Viel Erfolg

Jürgen