Autor Beitrag
soisseteben
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 111

Win XP
D7
BeitragVerfasst: So 01.10.06 11:46 
Gibt es eine Möglichkeit, mir die Höhe der Taskleiste in Pixeln ausgeben zu lassen oder mein Formular gleich genau darauf aufzusetzten?

Dankeschön

_________________
„Wer nur nach dem Zweck der Dinge fragt, wird ihre Schönheit nie entdecken.“ - (Halldór Laxness)
Reinhard Kern
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 591
Erhaltene Danke: 14



BeitragVerfasst: So 01.10.06 12:17 
user profile iconsoisseteben hat folgendes geschrieben:
Gibt es eine Möglichkeit, mir die Höhe der Taskleiste in Pixeln ausgeben zu lassen oder mein Formular gleich genau darauf aufzusetzten?

Dankeschön


Hallo,

die Höhe der TaskBar kann man beim Entwurf setzen und lesen und später auch, die Eigenschaft heisst Height (ist schon schwer, drauf zu kommen, aber in der Hilfe findet man so etwas...).

Was du mit "Formular drauf aufsetzen" meinst, ist mir nicht verständlich - jedenfalls gehört die Tskbar zum Client-Bereich des Formulars, man muss sie also dort abziehen, wenn man den verfügbaren Platz bestimmen will.

Gruss Reinhard
elundril
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3747
Erhaltene Danke: 123

Windows Vista, Ubuntu
Delphi 7 PE "Codename: Aurora", Eclipse Ganymede
BeitragVerfasst: So 01.10.06 12:21 
ich glaub er meint unten die Startleiste und mit draufsetzen meint er sowas wie beim WMP wenn man ihn minimiert!

wenn nicht dann meint er mit draufsetzen vl das man zu den minimieren, maximieren und schließen button noch einen (oder auch was anderes) hinzufügen kann!

mfg el

_________________
This Signature-Space is intentionally left blank.
Bei Beschwerden, bitte den Beschwerdebutton (gekennzeichnet mit PN) verwenden.
DarkLord05
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 449

WinXP Pro SP2
Opera; Delphi 3 Pro; Delphi 2005, Turbo Delphi, dev-c++, Eclipse, MS Visual Studio .NET 2003, MS Visual C++
BeitragVerfasst: So 01.10.06 12:42 
Er will sein Programm auf die taskleiste setzten. Ich denke er will sich die höhe des Bildes holen und dann die höhe der Taskleiste abziehen um sein Programm da aufzusetzten.
Kenn die lösung selbst nicht (würd mich aber auch interessieren), wollt nur erklären was er meint^^
soisseteben Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 111

Win XP
D7
BeitragVerfasst: So 01.10.06 13:23 
Ziel war es, ein Formular so zu maximieren, das es nicht mehr hinter der Taskleiste liegt, sondern direkt darauf. Mit Taskleiste mein ich die Leiste am Bilschirm mit Start usw... . Da müsste es doch eine Win-Funktion geben, die mir deren Höhe zurückliefert, sodass ich dann die Größe meines Formulars darauf abstimmen kann. Kann mir schlecht vorstelen das ich das mit "Height" (einfach so) im Entwurf einstellen kann. Lass mich aber gern eines besseren belehren.

Ich hoffe es war jetzt verständlich.

/EDIT: Also eigentlich genau wie DarkLord meinte.

_________________
„Wer nur nach dem Zweck der Dinge fragt, wird ihre Schönheit nie entdecken.“ - (Halldór Laxness)
cuejo
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 142

Win XP
Delphi 7 Personal und 2005 PE
BeitragVerfasst: So 01.10.06 13:28 
Also spontan fällt mir dazu nur folgendes ein:
ausblenden Delphi-Quelltext
1:
TaskleistenHoehe:=Screen.Height-Screen.WorkAreaHeight;					

_________________
Computer sind dumm, aber fleißig. Deshalb arbeite ich so gerne damit.
DarkLord05
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 449

WinXP Pro SP2
Opera; Delphi 3 Pro; Delphi 2005, Turbo Delphi, dev-c++, Eclipse, MS Visual Studio .NET 2003, MS Visual C++
BeitragVerfasst: So 01.10.06 13:30 
Öhm, kann mich auch irren, aber wenn du ein Formular maximierst, dann legt sich das doch automatisch auf die Taskleiste. Oder soll das unabhängig vom "maximieren" sein?
Blackheart666
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2195

XP
D3Prof, D6Pers.
BeitragVerfasst: So 01.10.06 13:31 
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
function GetTaskbarHeight: integer;
var
  SysTray: Windows.HWND;
  Rect: TRect;
begin
  Result := -1;
  SysTray := FindWindow('Shell_TrayWnd'nil);
  If SysTray <> INVALID_HANDLE_VALUE then begin
    If GetWindowRect(SysTray, Rect) then begin
      Result := Screen.Height - Rect.Top;
    end;
  end;
end;
Martin1966
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1068

Win 2000, Win XP
Delphi 7, Delphi 2005
BeitragVerfasst: So 01.10.06 13:32 
Vielleicht hilft dir die Funktion Suche im MSDN SYSTEMPARAMETERSINFO mit dem Parameter Suche im MSDN SPI_GETWORKAREA weiter:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
var
  r: TRect;
begin
  SystemParametersInfo(SPI_GETWORKAREA, 0, @r, 0);

_________________
Ein Nutzer der Ecke ;-)
Andreas L.
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1703
Erhaltene Danke: 25

Windows Vista / Windows 10
Delphi 2009 Pro (JVCL, DragDrop, rmKlever, ICS, EmbeddedWB, DEC, Indy)
BeitragVerfasst: So 01.10.06 13:35 
Mit screen.WorkAreaHeight bekommst du die Höhe des Desktops abzüglich sämtlicher Leisten und DeskBands. Also

ausblenden Delphi-Quelltext
1:
form1.top := screen.WorkAreaHeight - form1.height;					
cuejo
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 142

Win XP
Delphi 7 Personal und 2005 PE
BeitragVerfasst: So 01.10.06 13:43 
user profile iconAndreas L. hat folgendes geschrieben:
ausblenden Delphi-Quelltext
1:
form1.top := screen.WorkAreaHeight - form1.height;					

Dadurch wird Form1.Top negativ! Ich plädiere immer noch für meinen Vorschlag :mrgreen:

_________________
Computer sind dumm, aber fleißig. Deshalb arbeite ich so gerne damit.
cuejo
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 142

Win XP
Delphi 7 Personal und 2005 PE
BeitragVerfasst: So 01.10.06 13:46 
Sorry, hab mich verguckt! :oops: Das ist vollkommen richtig.

_________________
Computer sind dumm, aber fleißig. Deshalb arbeite ich so gerne damit.
soisseteben Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 111

Win XP
D7
BeitragVerfasst: So 01.10.06 14:12 
Jo...ich schau mir das alles mal an. Danke schonmal für euer Engagement :D.

_________________
„Wer nur nach dem Zweck der Dinge fragt, wird ihre Schönheit nie entdecken.“ - (Halldór Laxness)
soisseteben Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 111

Win XP
D7
BeitragVerfasst: So 01.10.06 18:42 
Da ich nur Maximieren wollte hab ichs jetzt so gemacht:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
Top := 0;
Left := 0;
Height := Screen.WorkAreaHeight;
Width := Screen.WorkAreaWidth;


Danke nochmal! :D

_________________
„Wer nur nach dem Zweck der Dinge fragt, wird ihre Schönheit nie entdecken.“ - (Halldór Laxness)
Blackheart666
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2195

XP
D3Prof, D6Pers.
BeitragVerfasst: So 01.10.06 19:01 
Warum stellst Du dann nicht gleich WindowState auf wsMaximized.

_________________
Blackheart666
Der Irrsinn ist bei Einzelnen etwas Seltenes, - aber bei Gruppen, Parteien, Völkern, Zeiten die Regel. (Friedrich Nietzsche)
Andreas L.
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1703
Erhaltene Danke: 25

Windows Vista / Windows 10
Delphi 2009 Pro (JVCL, DragDrop, rmKlever, ICS, EmbeddedWB, DEC, Indy)
BeitragVerfasst: So 01.10.06 19:51 
user profile iconBlackheart666 hat folgendes geschrieben:
Warum stellst Du dann nicht gleich WindowState auf wsMaximized.


Weil wsMaximized keine Taskleisten und Deskbands beachtet wenn diese auf nicht fixiert gestellt wurden (nur XP). Zumindest bin ich auf dieses Problem gestoßen als ich mir ne GUI gebaut habe.
jakobwenzel
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1889
Erhaltene Danke: 1

XP home, ubuntu
BDS 2006 Prof
BeitragVerfasst: So 01.10.06 19:56 
das aber nur, wenn borderStyle auf bsNone ist.

_________________
I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
soisseteben Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 111

Win XP
D7
BeitragVerfasst: Mo 02.10.06 18:19 
nicht in D7.

_________________
„Wer nur nach dem Zweck der Dinge fragt, wird ihre Schönheit nie entdecken.“ - (Halldór Laxness)