Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Fenster wie bei ICQ (https://www.delphipraxis.net/17226-fenster-wie-bei-icq.html)

billi 3. Mär 2004 07:31

Re: Fenster wie bei ICQ
 
Zitat:

Wenn gewünscht grabbe ich die paar Zeilen mal aus nem Proggi von mir.
Jo, das wär nett...
gruß
billi

fylo 3. Mär 2004 09:18

Re: Fenster wie bei ICQ
 
hi

Ja, das was du meinst ist ScreenSnap und SnapBuffer.
Das hat aber doch nichts mit einer AppBar zutun, oder :?:

Eine AppBar ist doch so was wie die Windowstaskleiste, die meistens
unten am Bildschirm verankert ist.

billi 3. Mär 2004 09:20

Re: Fenster wie bei ICQ
 
so ist es... aber wo finde ich die Komps ScreenSnap und SnapBuffer
gruß
billi

fylo 3. Mär 2004 09:23

Re: Fenster wie bei ICQ
 
Es sind keine Komponenten, sondern bei Delphi7 sind es Eigenschaften einer TForm.
Musst mal im Objektinspektor die Form auswählen und die einzelnen Eigenschaften
betrachten.

billi 3. Mär 2004 09:24

Re: Fenster wie bei ICQ
 
ich hab aber nur version 5 und wie mach ich das dann?

fylo 3. Mär 2004 09:31

Re: Fenster wie bei ICQ
 
Sorry hat ich übersehen :oops:
Na dann kann ich dir noch die JEDI Komponenten empfehlen.
In dem Paket (ca. 10mb) gibt es einige Komponentne für die Form unter anderem auch ScreenMagnet.

tobster 3. Mär 2004 19:35

Re: Fenster wie bei ICQ
 
Zitat:

Zitat von billi
Zitat:

Wenn gewünscht grabbe ich die paar Zeilen mal aus nem Proggi von mir.
Jo, das wär nett...
gruß
billi

Zum Thema Appbar zurück:

Code:
uses [...], ShellAPI;

type
  TForm1 = class(TForm)
   [...]
  private
    { Private-Deklarationen }
    AppBar: TAppBarData;
  end;
   
[...]

procedure TForm1.DoAppbar(Sender: TObject);
begin
 with AppBar do begin
  cbSize := SizeOf(TAppBarData);
  hWnd := Form1.Handle;
  uEdge := ABE_TOP;
 end;
 SHAppBarMessage(ABM_NEW, AppBar);
 SystemParametersInfo(SPI_GETWORKAREA, 0, @AppBar.rc, 0);
 AppBar.rc.Bottom := AppBar.rc.Top+100;
 SHAppBarMessage(ABM_QUERYPOS, AppBar);
 SHAppBarMessage(ABM_SETPOS, AppBar);
 Application.ProcessMessages;
 [...]
 MoveWindow(Form1.Handle,AppBar.rc.Left,AppBar.rc.Top,AppBar.rc.Right,AppBar.rc.Bottom,true);
 SendMessage(Form1.Handle, wm_sizing,0,0);
end;
Spätestens beim Beenden seines Proggies sollte man dann den reservieren Bereich (hier 100 Pixel am oberen Rand) wieder freigeben:

Code:
 SHAppBarMessage(ABM_REMOVE, AppBar);
Ich habs nicht so mit Kommentaren, aber eigentlich sollte man ja sehen, wo was hingehört. :twisted:


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:54 Uhr.
Seite 2 von 2     12   

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