Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Desktop symbole ein/ausblenden (https://www.delphipraxis.net/135822-desktop-symbole-ein-ausblenden.html)

vip11 18. Jun 2009 13:37


Desktop symbole ein/ausblenden
 
hi
ich hab mal ne frage: wie kann ich die funktion "desktop symbole anzeigen" mit delphi auslösen?
hotkey hab ich bereits jetzt müsst ihc nur noch wissen wie man die funktion benutzten kann(vista).

mfg vip11

0xF48CBFF 18. Jun 2009 14:43

Re: Desktop symbole ein/ausblenden
 
Hallo vip11,

hier ein Beispiel, wie man die Icons auf dem Dektop anzeigen und verstecken kann:
Delphi-Quellcode:
ShowWindow(FindWindow(nil, 'Program Manager'), SW_SHOW);
ShowWindow(FindWindow(nil, 'Program Manager'), SW_HIDE);
Es funktioniert unter Windows XP einwandfrei.

0xF4CBFF

vip11 18. Jun 2009 15:40

Re: Desktop symbole ein/ausblenden
 
thx klappt
jetzt hab ich des problem das mein programm die hotkeys nimmer nimmt :(
was hab ich falsch gemacht?
Code:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
    id3: Integer;
    procedure WMHotKey(var Msg: TWMHotKey); message WM_HOTKEY;
  public
    { Public declarations }
  end;

var
  x : integer;
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.WMHotKey(var Msg: TWMHotKey);
begin
  if Msg.HotKey = id3 then
    button1.Click;
end;

procedure TForm1.FormCreate(Sender: TObject);
const
  VK_F4 = $73;
begin
x := 0;
  id3 := GlobalAddAtom('Hotkey3');
  RegisterHotKey(Handle, id3, 0, VK_F4);

end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  UnRegisterHotKey(Handle, id3);
  GlobalDeleteAtom(id3);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
if x = 0 then begin
      x:= 1;
ShowWindow(FindWindow(nil, 'Program Manager'), SW_SHOW);
end else if x= 1 then begin
x:= 0;
ShowWindow(FindWindow(nil, 'Program Manager'), SW_HIDE);
end;
end;

end.

0xF48CBFF 18. Jun 2009 16:15

Re: Desktop symbole ein/ausblenden
 
Hallo vip11,

ich sehe in deinem Code keinen Fehler. Habe es sogar getestet und es funktioniert ohne Fehler.

0x48CBFF

vip11 18. Jun 2009 16:16

Re: Desktop symbole ein/ausblenden
 
hm bei mir klappts nicht (bei ner alten datei die auch so gemacht wurde schon)
könnte des nen problem mit dem pc sein?

0xF48CBFF 18. Jun 2009 16:22

Re: Desktop symbole ein/ausblenden
 
Hallo vip11,

sicher, dass du die F4-Taste drückst? :D

0xF48CBFF

vip11 18. Jun 2009 18:32

Re: Desktop symbole ein/ausblenden
 
ja^^ wie gesagt hab ja schon nen anderes Programm mit F4 gemacht und des geht (hab leider nur noch die exe selbst)
dies hab ich damals damit gemacht: http://www.swissdelphicenter.ch/de/showcode.php?id=147
des geht auch bei mir nicht mehr. kann man irgendwie überprüfen ob delphi fehler hat?

oder irgendwer mal erstellen und die exe hochlade damit ich prüfen kann obs an meinem delphi liegt

vip11 20. Jun 2009 17:54

Re: Desktop symbole ein/ausblenden
 
/push

vip11 21. Jun 2009 22:48

Re: Desktop symbole ein/ausblenden
 
/push

toms 22. Jun 2009 05:36

Re: Desktop symbole ein/ausblenden
 
Wird F4 evtl durch ein anderes Programm belegt?
Wird WMHotKey und dann button1.Click ausgeführt?


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:40 Uhr.
Seite 1 von 2  1 2      

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