Windowsspezifisches Forum , API ,..
Beiträge, die plattformübergreifend sind, gehören ins 'Allgemein'-Forum.
RSBasic
Admin
Beiträge: 8047 Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:
Beitrag
von RSBasic » 18.05.2008 18:04
Hallo
ich hab wieder ein API-Problem (wie immer^^)
Kurz und knapp: Wie kann man die Höhe der Taskleiste einstellen?
Ich hab da schon versucht, aber leider ohne Erfolg
Code: Alles auswählen
handle = FindWindow_("Shell_TrayWnd",0)
SetWindowPos_(handle,#HWND_TOPMOST,0,0,1280,20,#SWP_SHOWWINDOW|#SWP_NOMOVE)
Könnt ihr mir helfen?
Danke im Voraus
Zuletzt geändert von
RSBasic am 19.05.2008 21:08, insgesamt 3-mal geändert.
RSBasic
Admin
Beiträge: 8047 Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:
Beitrag
von RSBasic » 18.05.2008 20:41
Bin etwas weitergekommen:
Code: Alles auswählen
SetWindowPos_(handle,0,0,0,1280,70,#SWP_NOZORDER|#SWP_NOSENDCHANGING)
Das Verkleinern/Vergrößern funktioniert eigentlich schon, nur nicht so richtig.
Die SysTray spielt nicht mit, außerdem brauche ich richtige Werte.
Manmchal zu klein, manchmal zu groß und manchmal ist die Taskleiste auf einmal oben
Kann einer mir helfen?
Andreas
ToolbarKönig
Beiträge: 142 Registriert: 08.09.2004 08:33
Beitrag
von Andreas » 18.05.2008 21:03
Versuch mal mit den Daten.
Code: Alles auswählen
BAR.APPBARDATA
BAR\cbSize = SizeOf(APPBARDATA)
BAR\hwnd = FindWindow_("Shell_TrayWnd",0)
SHAppBarMessage_(#ABM_GETTASKBARPOS,BAR)
Height = BAR\rc\bottom-BAR\rc\top
BAR\rc\top = BAR\rc\top-Height
SetWindowPos_(BAR\Hwnd,0,BAR\rc\left,BAR\rc\top,BAR\rc\right,BAR\rc\bottom-BAR\rc\top,#SWP_NOZORDER|#SWP_NOSENDCHANGING)
Gruss Andreas
RSBasic
Admin
Beiträge: 8047 Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:
Beitrag
von RSBasic » 18.05.2008 21:11
@Andreas
Super! Vielen Dank API-König
Eine Frage hätte ich noch...
>cY
>>BAR\rc\bottom-BAR\rc\top
Wie kann ich das selber bestimmen?
Wie sind die Werte? 20? 40? 60?
Oder muss ich da irgendwas beachten?
Ich komm damit nicht klar
Danke im Voraus.
Andreas
ToolbarKönig
Beiträge: 142 Registriert: 08.09.2004 08:33
Beitrag
von Andreas » 18.05.2008 21:29
Das sind Rechteckwerte aus der Struktur APPBARDATA.
Die Struktur wird mit SHAppBarMessage_(#ABM_GETTASKBARPOS,BAR)
eingelesen.
Mit (BAR\rc\bottom-BAR\rc\top) wird die Höhe der Taskbar berechnet.
Gruss Andreas
RSBasic
Admin
Beiträge: 8047 Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:
Beitrag
von RSBasic » 18.05.2008 22:04
Der Code von dir ist schon perfekt, aber ich verstehe es trotzdem nicht, wie ich das selber bestimmen kann.
Eine normale Höhe der Taskleiste ist (circa) 30 Pixel.
Die doppelte Größe der Höhe der Taskleiste ist 60 Pixel.
Und dann immer so weiter.
Wie kann ich das selber einstellen, dass z.B. die Taskleiste 30 Pixel hoch sein muss oder 60 Pixel, wie?
Danke im Voraus
ts-soft
Beiträge: 22292 Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43 CPU: AMD FX-6300 Six-Core Processor GraKa: GeForce GTX 750 Ti, 2 GB Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin
Beitrag
von ts-soft » 18.05.2008 22:17
in dieser Zeile:
Wobei Du sinnvolle Werte nehmen solltest, damits wirkt
Andreas_S
Beiträge: 787 Registriert: 14.04.2007 16:48
Wohnort: Wien Umgebung
Kontaktdaten:
Beitrag
von Andreas_S » 18.05.2008 22:18
Code: Alles auswählen
BAR.APPBARDATA
BAR\cbSize = SizeOf(APPBARDATA)
BAR\hwnd = FindWindow_("Shell_TrayWnd",0)
SHAppBarMessage_(#ABM_GETTASKBARPOS,BAR)
Debug BAR\rc\top
Debug BAR\rc\bottom
Height = 60
SetWindowPos_(BAR\Hwnd,0,BAR\rc\left,BAR\rc\top,BAR\rc\right,Height,#SWP_NOZORDER|#SWP_NOSENDCHANGING)
Andreas
ToolbarKönig
Beiträge: 142 Registriert: 08.09.2004 08:33
Beitrag
von Andreas » 18.05.2008 22:33
ts-soft hat geschrieben: Wobei Du sinnvolle Werte nehmen solltest, damits wirkt
Nicht nur das ! Es gibt auch User die haben die Taskbar an der linken oder rechten Seite des Desktops.
Gruss Andreas
RSBasic
Admin
Beiträge: 8047 Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:
Beitrag
von RSBasic » 19.05.2008 19:39
@Andreas
Hm...ich verstehe es immer noch nicht
Kannst du für mich folgendes machen?
1. Die Taskleiste soll unten sein
2. Soll 30 Pixel hoch sein (also 1ne Zeile)
Das wäre sehr nett von dir, wenn du das so "einrichtest"