für ein Projekt muss ich innerhalb eines Xbase-Programms einen XbpDialog() anzeigen, der ohne die oben genannten Buttons daherkommt. Der Dialog ist recht klein, und die Buttons aufgrund seiner Funktion nicht erforderlich (eher: hinderlich).
Ich zitiere da mal aus der Dokumentation zu :maxButton:
OK, mein Problem ist, dass ich die Titlebar brauche. Nach mehreren Versuchen bin ich auf diese Lösung gekommen:The pushbutton is always displayed within an MDI client window, unless :titleBar is set to .F. (false).
Code: Alles auswählen
oDlg := XbpDialog():new(AppDeskTop(), oPart2Move:setOwner(), aPos, aSize)
Beide XbaseParts, also die XbpListBox() im Hintergrund, als auch der XbpDialog(), haben die gleiche Grösse, in diesem Fall 120 * 120 Pixel. Die angezeigte Grösse des XbpDialog() ist aber nur 105 * 112 Pixel (plus/minus 1 Pixel).
Ich hoffe, ich konnte mein Problem deutlich genug beschreiben:
ich brauche einen XbpDialog() mit der gleichen, angezeigten Grösse wie ein anderes XbasePart, dessen Titlebar sichtbar und nutzbar sein muss (zwecks mit der Maus packen und verschieben). Daher sind bei kleinen Ausgangs-XbaseParts die Buttons hinderlich und könnten alle entfallen.
Der Lösungsansatz, den Desktop als Parent zu verwenden, klappt - allerdings ist der XbpDialog() in der Anzeige etwas kleiner als die Vorgabe, die beim :new() mittels aSize vorgegeben wird. Rufe ich im Debugger die :currentSize() ab, wird sie (in diesem Fall) mit {120, 120} angegeben.
Jetzt suche ich nach einem Lösungsweg.