Seite 1 von 1

Größe beim Anwendungsfenster ändern

Verfasst: Sa, 29. Mär 2014 17:25
von saul
Hallo,
ich habe ein kleines Testprogramm installiert. Ein Anwendungsfenster und ein weiteres Fenster darin.

Code: Alles auswählen

PROCEDURE Main
	LOCAL nEvent, mp1, mp2, oXbp, aPos[2], aSize, nHeight:=500, nWidth := 715

	// Größe vom DeskTop feststellen
	// um Anwendungsfenster zu zentrieren
	aSize    := SetAppWindow():currentSize()
	aPos[1]  := Int( (aSize[1]-nWidth ) / 2 )
	aPos[2]  := Int( (aSize[2]-nHeight) / 2 )

	 // Anwendungsfenster erzeugen
	oFensterStart := XbpDialog():new()
	oFensterStart:border   := XBPDLG_DLGBORDER
	oFensterStart:taskList := .T.
	oFensterStart:title := "Timechecker"
	oFensterStart:maxButton:= .T.
	oFensterStart:create( ,, aPos, {nWidth, nHeight},, .T. )

	// Fenster erzeugen
	oFensterl := XbpDialog():new()
	oFensterl :border   := XBPDLG_DLGBORDER
	oFensterl :taskList := .T.
	oFensterl :title := "Fenster links"
	oFensterl :maxButton:= .T.
	oFensterl :create(oFensterstart:drawingArea ,, {8,100}, {348,357},, .T. )

	SetAppWindow( oFensterl )
	SetAppFocus ( oFensterl )

	DO WHILE .T.
	  nEvent := AppEvent( @mp1, @mp2, @oXbp )
	  oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO
RETURN
Das Fenster im Anwendungsfenster läßt sich mit der Maus in der Größe stufenlos verstellen. Das äußere Anwendungsfenster läst sich nicht stufenlos verstellen. Im xbase++ Beispielprogramm SDIDemo ist das ebenfalls so. Geht das generell nicht zu verstellen?

mfg
Wolfgang

Re: Größe beim Anwendungsfenster ändern

Verfasst: Sa, 29. Mär 2014 18:00
von brandelh
das hängt erstens vom Fensterrahmentyp ab und zweitens kann man die Max und Min Size einstellen.
Mit einem unveränderlichen Rahmentyp geht die Größenänderung von Windows her nicht, im anderen Fall wird wenn Max und Min Wert identisch ist von Xbase++ die Änderung zurückgesetzt.

Richtige MDI Fenster haben wir eh nicht, es sind alles Dialogfenster. Schau mal in der Hilfe zu XbpDialog() nach, es gibt auch in den Samples einige Beispiele die das Verhalten von Fenstern je nach Einstellung ändern.

Re: Größe beim Anwendungsfenster ändern

Verfasst: So, 30. Mär 2014 23:46
von AUGE_OHR
saul hat geschrieben:

Code: Alles auswählen

	oFensterStart:taskList := .T.

	oFensterl :taskList := .T.

	DO WHILE .T.
in einer Applikation erhält nur die MAIN einen Eintrag in die Tasklist, deshalb geht das o:resize nicht.

Frage : wie willst du später das 2nd Fenster zumachen ?

Re: Größe beim Anwendungsfenster ändern

Verfasst: Mo, 31. Mär 2014 5:24
von saul
Hallo,
das weiß ich noch nicht. Es sind im Moment nur Tests wie sich die xbpParts verhalten. Ich habe die Rahmenform geändert. Jetzt läßt sich auch das Anwendungsfenster in der Größe stufenlos verändern.

mfg
Wolfgang