AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

OnMaximize + Fenster eigene Größe geben

Ein Thema von bwolf · begonnen am 15. Jun 2007 · letzter Beitrag vom 15. Jun 2007
Antwort Antwort
bwolf

Registriert seit: 17. Jan 2006
368 Beiträge
 
Delphi 2009 Professional
 
#1

OnMaximize + Fenster eigene Größe geben

  Alt 15. Jun 2007, 13:25
Hi all,

Wenn ein Fenster maximiert wird, will ich nicht das es den kompletten Bildschirm einnimmt, sonder das es eine von mir zugewiesen Größe annimmt.
Das funktioniert auch prima:

Delphi-Quellcode:
  if (msg.cmdtype and $FFF0) = SC_MAXIMIZE then
  begin
     // hide
     WindowState := wsMaximized;
     left := 0;
     Top := frm_main.height;
     Height := screen.Height-frm_main.height;
     width := screen.width;
    // show
  end
  else
    inherited;
Das WindowState := wsMaximized setze ich vorher, damit als Icon auch das "maximiert"-Sysmbol angezeigt wird.

Das Problem was ich jetzt noch habe:
Wenn ich das Fenster maximiere, wird es erst "richtig" maximiert, bevor es auf meine eigene größe gebracht wird. Und das sieht halt nicht besonders schön aus.
Ich habe versucht, das Fenster erst zu verstecken, dann zu maximieren, dann auf meine eigene Größe zubringen und es dann wieder anzuzeigen - aber das klappt nicht, versteckte Fenster können wohl nicht maximiert (oder überhaupt in Ihrer Größe) geändert werden.

Hat jemand einen Tip für mich?
Danke schonmal,
gruß ben
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: OnMaximize + Fenster eigene Größe geben

  Alt 15. Jun 2007, 13:54
hast du mal geschaut ob wm_size ausgelöst wird? eventuell dort noch korrigeren.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
bwolf

Registriert seit: 17. Jan 2006
368 Beiträge
 
Delphi 2009 Professional
 
#3

Re: OnMaximize + Fenster eigene Größe geben

  Alt 15. Jun 2007, 14:26
ausgelöst wird's, hab ich eben probiert - aber wie ich das da korrigieren soll...
  Mit Zitat antworten Zitat
DelphiKlaus

Registriert seit: 18. Okt 2006
100 Beiträge
 
Delphi 6 Professional
 
#4

Re: OnMaximize + Fenster eigene Größe geben

  Alt 15. Jun 2007, 14:29
Hallo,

es gibt eine Windows-Message wm_GetMinMaxInfo oder so ähnlich. In der Antwort auf diese Message kannst Du angeben, wie gross das Fenster beim Maximieren und beim Aufziehen werden darf.

Klaus
  Mit Zitat antworten Zitat
bwolf

Registriert seit: 17. Jan 2006
368 Beiträge
 
Delphi 2009 Professional
 
#5

Re: OnMaximize + Fenster eigene Größe geben

  Alt 15. Jun 2007, 15:07
Danke, das werd ich mir mal ansehen!
  Mit Zitat antworten Zitat
Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#6

Re: OnMaximize + Fenster eigene Größe geben

  Alt 15. Jun 2007, 15:13
Hallo ben,

du könntest auch prüfen, ob eine Einstellung von Delphi-Referenz durchsuchenTForm.Constraints mit deiner Positionierung zusammenspielt.

Gruß Hawkeye
  Mit Zitat antworten Zitat
bwolf

Registriert seit: 17. Jan 2006
368 Beiträge
 
Delphi 2009 Professional
 
#7

Re: OnMaximize + Fenster eigene Größe geben

  Alt 15. Jun 2007, 16:03
So,

hab es jetzt mit wm_GetMinMaxInfo gelößt - jetzt siehts wunderbar aus
Danke für eure zahlreichen Antworten!
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:24 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz