AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi ClientHeight/ClientWidth für WinAPI
Thema durchsuchen
Ansicht
Themen-Optionen

ClientHeight/ClientWidth für WinAPI

Ein Thema von Nonsense · begonnen am 11. Okt 2004 · letzter Beitrag vom 22. Okt 2004
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Nonsense
Nonsense

Registriert seit: 23. Nov 2002
389 Beiträge
 
Delphi 5 Standard
 
#1

ClientHeight/ClientWidth für WinAPI

  Alt 11. Okt 2004, 12:29
Hallo,

gibt es eine WinAPI Funktion, welche mir die Höhe/Weite des Client Bereiches meines Fensters zurückgibt (sowas wie ClientHeight/ClientWidth)?

Thx.
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.009 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#2

Re: ClientHeight/ClientWidth für WinAPI

  Alt 11. Okt 2004, 16:35
MSDN-Library durchsuchenGetClientRect
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Benutzerbild von Nonsense
Nonsense

Registriert seit: 23. Nov 2002
389 Beiträge
 
Delphi 5 Standard
 
#3

Re: ClientHeight/ClientWidth für WinAPI

  Alt 11. Okt 2004, 16:53
Danke.
  Mit Zitat antworten Zitat
Benutzerbild von Nonsense
Nonsense

Registriert seit: 23. Nov 2002
389 Beiträge
 
Delphi 5 Standard
 
#4

Re: ClientHeight/ClientWidth für WinAPI

  Alt 17. Okt 2004, 20:50
Gibt es eine Möglichkeit (unter Win32 API), die Client-Größe festzulegen? Das Problem ist nämlich, dass sich meine Fenstergröße nach dem Inhalt richtet (zum Beispiel ein Bild mit fester Größe von 250x350 Pixel).

Wenn jetzt jemand mit WindowsXP das Programm aufruft, ist der untere Teil des Bildes nicht mehr sichtbar, da die Größe der Titel-Leiste sich zwischen Win2k und WinXP unterschiedlich ist (wegen Luna-Oberfläche).

Mit der VCL geht das ja auch: FormMain.ClientHeight := 250;

Hat jemand eine Idee?
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: ClientHeight/ClientWidth für WinAPI

  Alt 17. Okt 2004, 21:01
Moin Nonsense,

schau Dir dazu mal MSDN-Library durchsuchenSetWindowPos an.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Nonsense
Nonsense

Registriert seit: 23. Nov 2002
389 Beiträge
 
Delphi 5 Standard
 
#6

Re: ClientHeight/ClientWidth für WinAPI

  Alt 17. Okt 2004, 21:08
Zitat von Christian Seehase:
Moin Nonsense,

schau Dir dazu mal MSDN-Library durchsuchenSetWindowPos an.
Wird dadurch aber nicht auch nur die Größe außerhalb der Titelleiste geändert (cx, cy)?

Mal ein Beispiel - wenn die Titelleiste größer ist als "normal" (wie bei WinXP mit Luna), sieht das wie bei Anhang aus: der untere Teil ist abgeschnitten.
Miniaturansicht angehängter Grafiken
fenster.gif  
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: ClientHeight/ClientWidth für WinAPI

  Alt 17. Okt 2004, 21:12
Moin Nonsense,

Du müsstest Dir, mit Hilfe von MSDN-Library durchsuchenGetSystemMetrics, die für die jeweilige Systemumgebung erforderliche Formulargrösse ausrechnen.
Da kommen einige mögliche Einstellungen in Frage.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Nonsense
Nonsense

Registriert seit: 23. Nov 2002
389 Beiträge
 
Delphi 5 Standard
 
#8

Re: ClientHeight/ClientWidth für WinAPI

  Alt 17. Okt 2004, 21:15
Ok, Danke.
Einfacher wird es wohl nicht gehen.
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

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

Re: ClientHeight/ClientWidth für WinAPI

  Alt 17. Okt 2004, 23:20
Wenn du die Clientheight rausbekommst und die richtige höhe kannst du doch anhand der sich daraus ergebenen Differenz berechnen wie groß die neue größe sein muss damit die gewünschte Clientheight erreicht wird. Anders wird es in den VCL-Sourcen sicher auch nicht sein.
Wenn also dein Form eine Clientheight von 50 hat und die reale Höhe 80 ist dann musst du wenn die Clientheight 100 werden soll nur 50 auf die reale höhe dazu rechnen (100 - alteClientheight(50) = 50 => 50 + 80 = Clientheight von 100).
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
teebee

Registriert seit: 17. Jan 2003
Ort: Köln
460 Beiträge
 
Delphi 6 Professional
 
#10

Re: ClientHeight/ClientWidth für WinAPI

  Alt 18. Okt 2004, 07:16
Ich hätte auch noch was:MSDN-Library durchsuchenAdjustWindowRect

Gruß, teebee
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 17:16 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