Autor Beitrag
Nova
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 24



BeitragVerfasst: Fr 09.02.07 02:01 
Hi zusammen,

ich schreibe mir selbst gerade ein kleines Programm womit ich hoffentlich meinen Kopf zusammenhalten kann
bedeutet, Termine eintragen, ToDo Listen, Telefonlisten und was nicht alles

Jetzt würde ich gerne ein kleines 200x200 Pixel großes Fenster auf meinem Desktop platzieren, welches die wichtigsten Sachen auf einen Blick anzeigt. Das Problem ist jetzt nur, wie kann ich es schaffen, dass dieses Fenster immer auf dem Desktop angezeigt wird, also so als ob es auf den Hintergrund gemalt ist... Wenn ich zB "Dekstop anzeigen" drücke, verschwindet mein Tool natürlich mit allen anderen. Das würde ich aber gerne verhindern.

Danke schonmal
Olli
Logikmensch
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 390

Win XP
Delphi 2007 Prof., XE2, XE5
BeitragVerfasst: Fr 09.02.07 07:15 
Du könntest ja auch statt auf eine 200x200 Bitmap direkt auf Deine Hintergrundgrafik zeichnen, die Du dann natürlich für Dein Desktop einstellen müsstest. Wie man "Desktop anzeigen" so umgeht, dass auch dann Dein Progrämmchen sichtbar bleibt, weiß ich leider auch nicht.
Ich habe das bei mir so gelöst, dass ich mir eine Verknüpfung auf meine Hintergrundgrafik ebenfalls mit aufs Desktop gelegt habe und wenn ich was ändern will, geht MS-Paint automatisch auf und dann male /schreibe ich meine Notizen dann einfach darauf.

_________________
Es gibt keine Probleme - nur Lösungen!
Nova Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 24



BeitragVerfasst: Sa 10.02.07 15:41 
Naja aber die Methode wäre ja nur bedingt interaktiv,
also mann könnte dann gar keine Textfelder/Buttons etc darauf packen.
DrRzf
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 260

Win XP Prof
D7 Enterprise
BeitragVerfasst: So 11.02.07 03:58 
versuchs mal mit
Formstyle := fsStayOnTop;

_________________
rein statistisch gesehen darf man keiner statistik trauen die man nicht selbst gefälscht hat.
Jakob Schöttl
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 929
Erhaltene Danke: 1


Delphi 7 Professional
BeitragVerfasst: So 11.02.07 11:55 
user profile iconDrRzf hat folgendes geschrieben:
versuchs mal mit
Formstyle := fsStayOnTop;

nein, das bringt leider gar nichts - lies dir die Hilfe dazu durch - diese Eigenschaft ist für etwas anderes da (Programmintern).
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 11.02.07 12:27 
Die Lösung:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
var
  wnd: HWND;
begin
  timer1.Enabled:=false;
  wnd :=  FindWindow('Progman''Program Manager');
  wnd :=  FindWindowEx(wnd, 0'SHELLDLL_DefView'nil);
  wnd :=  FindWindowEx(wnd, 0'SysListView32''FolderView');

  if wnd <> 0 then
  begin
    parentwindow:=wnd;
  end;
  ShowWindow(Application.Handle,SW_HIDE);
end;

Dadurch wird das Fenster zum Unterfenster des Desktops (hört sich komisch an, is aber so), unbd der wird ja beim Desktop anzeigen noch angezeigt.
BorderStyle=bsNone ging zumindest bei mir danach aber nicht mehr.
Und die Position des Formulars bezieht sich danach auf den Monitor ganz oben links und nicht mehr auf den ersten.

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



BeitragVerfasst: Mo 19.02.07 19:36 
Das funktioniert! Super danke!!!
Ich werde erstmal ein wenig mein Programm weiter schreiben und dann rausfinden, was genau mit deinem Code funktioniert.

Edit: bsNone funktioniert bei mir komischerweise trotzdem. Nichts worüber ich mich beschweren würde *g*
Nur komisch, dass es bei dir nicht klappt