AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Ersatz für Office Shurtcut unter Windows 10
Thema durchsuchen
Ansicht
Themen-Optionen

Ersatz für Office Shurtcut unter Windows 10

Ein Thema von waldforest · begonnen am 19. Mai 2016 · letzter Beitrag vom 3. Mai 2019
Antwort Antwort
Seite 2 von 2     12   
EWeiss
(Gast)

n/a Beiträge
 
#11

AW: Ersatz für Office Shurtcut unter Windows 10

  Alt 20. Mai 2016, 16:49
Hallo,

@Eweiss, genau so etwas.
Gib mir ne Mail und ich schicke dir den Source
Ohne gewähr das es unter W10 noch funktioniert.

Zitat:
Bedeutet das, dass man den EXE-Namen und/oder das Icon nachträglich nicht editieren kann?
Bei meinem Programm wird das Icon aus der Exe extrahiert, alternativ kann man auch ein eigenes einfügen.
DragDrop also...

gruss

Geändert von EWeiss (20. Mai 2016 um 16:52 Uhr)
  Mit Zitat antworten Zitat
waldforest

Registriert seit: 8. Mai 2005
366 Beiträge
 
Delphi XE3 Enterprise
 
#12

AW: Ersatz für Office Shurtcut unter Windows 10

  Alt 20. Mai 2016, 17:32
Hallo,

@Eweiss, genau so etwas.
Gib mir ne Mail und ich schicke dir den Source
Ohne gewähr das es unter W10 noch funktioniert.

gruss

mmh, gerne, laut Forumhinweis kann ich keine PN an dich senden, hast du nicht zugelassen. Schick mir gerne ne PN.



gruss
mfg wf

Geändert von waldforest (20. Mai 2016 um 17:38 Uhr)
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#13

AW: Ersatz für Office Shurtcut unter Windows 10

  Alt 20. Mai 2016, 17:55
Hallo,

@Eweiss, genau so etwas.
Gib mir ne Mail und ich schicke dir den Source
Ohne gewähr das es unter W10 noch funktioniert.

gruss

mmh, gerne, laut Forumhinweis kann ich keine PN an dich senden, hast du nicht zugelassen. Schick mir gerne ne PN.



gruss
Versuchs nochmal..

gruss
  Mit Zitat antworten Zitat
FarAndBeyond
(Gast)

n/a Beiträge
 
#14

AW: Ersatz für Office Shurtcut unter Windows 10

  Alt 20. Mai 2016, 19:33
Ein einfaches Beispiel:
Delphi-Quellcode:
Unit uSimpleLauncher;

Interface
 Uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, ExtCtrls, Forms;

 Type
  TwndGUI = Class(TForm)

   Procedure FormCreate (Sender: TObject);
   Procedure FormShow (Sender: TObject);
   Procedure FormMouseUp (Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
   Procedure FormCloseQuery (Sender: TObject; Var CanClose: Boolean);

   Procedure TimerTOPdo (Sender: TObject);
   Procedure TimerGUIdo (Sender: TObject);

    PRIVATE
     Procedure WMGetMinMaxInfo (Var MSG: TWMGetMinMaxInfo); Message WM_GETMINMAXINFO;
     Procedure WMSysCommand (Var MSG: TWMSysCommand); Message WM_SYSCOMMAND;
  End;

 VAR
  wndGUI : TwndGUI;
  wndLaunch: TForm;
  timerGUI : TTimer;
  timerTOP : TTimer;
Implementation
 {$R *.dfm}


Procedure TwndGUI.FormCreate(Sender: TObject);
 Begin
  SetBounds(0, 0, Screen.Width, 100);

  DoubleBuffered:= True;
  Color := clNavy;
  BorderStyle := bsNone;
  FormStyle := fsStayOnTop;

   wndLaunch := TForm.Create(Application);
   wndLaunch.AlphaBlend := True;
   wndLaunch.AlphaBlendValue:= 1;
   wndLaunch.BorderStyle := bsNone;
   wndLaunch.FormStyle := fsStayOnTop;
   wndLaunch.OnCloseQuery := wndGUI.FormCloseQuery;
   wndLaunch.OnShow := wndGUI.FormShow;
   wndLaunch.SetBounds(100, 0, (Screen.Width-200), 1);
   wndLaunch.Show;

    timerTOP := TTimer.Create(Application);
    timerTOP.Interval:= 30;
    timerTOP.Enabled := False;
    timerTOP.OnTimer := wndGUI.TimerTOPdo;

    timerGUI := TTimer.Create(Application);
    timerGUI.Interval:= 30;
    timerGUI.Enabled := False;
    timerGUI.OnTimer := wndGUI.TimerGUIdo;

    timerTOP.Enabled:= True;
 End;


Procedure TwndGUI.WMGetMinMaxInfo(Var MSG: TWMGetMinMaxInfo);
 Begin
  Inherited;
   With MSG.MinMaxInfo^
   Do
    Begin
     ptMinTrackSize.x:= Screen.Width;
     ptMaxTrackSize.x:= Screen.Width;
     ptMinTrackSize.y:= 100;
     ptMaxTrackSize.y:= 100;
    End;
 End;


Procedure TwndGUI.WMSysCommand(Var MSG: TWMSysCommand);
 Begin
  If MSG.CmdType And $FFF0=SC_MINIMIZE
  Then wndGUI.Hide
  Else Inherited;
 End;


Procedure TwndGUI.FormShow(Sender: TObject);
  Var
   Owner: HWND;
 Begin
  Owner:= GetWindow(TForm(Sender).Handle, GW_OWNER);
  ShowWindow(Owner, SW_HIDE);
 End;


Procedure TwndGUI.TimerTOPdo(Sender: TObject);
  Var
   Cursor: TPoint;
 Begin
  GetCursorPos(Cursor);
   If PtInRect(wndLaunch.BoundsRect, Cursor)
   Then
    Begin
     timerTOP.Enabled:= False;
      wndGUI.Show;
     timerGUI.Enabled:= True;
      Exit;
    End;
  SetWindowPos(wndLaunch.Handle, HWND_TOPMOST,0,0,0,0, SWP_NOMOVE Or SWP_NOSIZE);
 End;


Procedure TwndGUI.TimerGUIdo(Sender: TObject);
  Var
   Cursor: TPoint;
 Begin
  GetCursorPos(Cursor);
   If Not PtInRect(wndGUI.BoundsRect, Cursor)
   Then
    Begin
     timerGUI.Enabled:= False;
      wndGUI.Hide;
     timerTOP.Enabled:= True;
    End;
 End;


Procedure ExitPRG;
 Begin
  If Assigned(wndGUI)
  Then
   Begin
    wndGUI.Release;
    wndGUI:= Nil;
   End;

  If Assigned(wndLaunch)
  Then
   Begin
    wndLaunch.Release;
    wndLaunch:= Nil;
   End;

  Application.Terminate;
 End;


Procedure TwndGUI.FormMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
 Begin
  If Button = mbRight
  Then ExitPRG;
 End;


Procedure TwndGUI.FormCloseQuery(Sender: TObject; Var CanClose: Boolean);
 Begin
  CanClose:= False;
 End;


End.
Delphi-Quellcode:
Program Launcher;

 Uses
  Forms,
  uSimpleLauncher In 'uSimpleLauncher.pas{wndGUI};

 {$R *.res}

Begin
 Application.Initialize;
 Application.ShowMainForm:= False;
 Application.CreateForm(TwndGUI, wndGUI);
 Application.Run;
End.
Was soll eigentlich falsch sein an ShellExecute ???
Delphi-Quellcode:
Procedure StartProgram(Path: String);
 Begin
  ShellExecute(wndGUI.Handle, Nil, PChar(Path), Nil, Nil, SW_SHOW);
 End;
Jetzt nur noch ein paar Bilder oder Icons drauf und den Pfad reinhauen und los geht's...
Kommt natürlich drauf an wie man den Pfad bezieht... (Datei, UserInput_Menü, Direkteingabe...)

Einfach starten und mit der Maus an die obere Bildschirmkante...
Schließen mit rechter Maustaste...


EDIT: CloseQuery war doppelt und wndLaunch.OnShow fehlte...

Geändert von FarAndBeyond (20. Mai 2016 um 20:55 Uhr)
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#15

AW: Ersatz für Office Shurtcut unter Windows 10

  Alt 20. Mai 2016, 20:56
Zitat:
Einfach starten und mit der Maus an die obere Bildschirmkante...
Sind die Ränder nicht reserviert unter W10 ?

Zitat:
Was soll eigentlich falsch sein an ShellExecute ???
Auch hier soll es Einschränkungen unter W10 geben.

Ob das allerdings so stimmt mag dahingestellt sein.
Hab kein W10

gruss
  Mit Zitat antworten Zitat
FarAndBeyond
(Gast)

n/a Beiträge
 
#16

AW: Ersatz für Office Shurtcut unter Windows 10

  Alt 20. Mai 2016, 21:03
Zitat:
Sind die Ränder nicht reserviert unter W10 ?
Echt, sowas machen die bei MS... Ich fordere freien Zugang zu allen Rändern...

Na ja, kann ich leider auch nicht ausprobieren...
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#17

AW: Ersatz für Office Shurtcut unter Windows 10

  Alt 20. Mai 2016, 21:26
Zitat:
Sind die Ränder nicht reserviert unter W10 ?
Echt, sowas machen die bei MS... Ich fordere freien Zugang zu allen Rändern...

Na ja, kann ich leider auch nicht ausprobieren...
Bei den ganzen Touch Kram sollte das eigentlich klar sein..
Da wird alles benutzt was möglich ist.
Aber egal.

gruss
  Mit Zitat antworten Zitat
Adama

Registriert seit: 7. Nov 2017
1 Beiträge
 
#18

AW: Ersatz für Office Shurtcut unter Windows 10

  Alt 7. Nov 2017, 08:26
gelöscht Seite 2 übersehen

Geändert von Adama ( 7. Nov 2017 um 08:28 Uhr)
  Mit Zitat antworten Zitat
MisterCP

Registriert seit: 24. Jan 2008
14 Beiträge
 
#19

AW: Ersatz für Office Shurtcut unter Windows 10

  Alt 3. Mai 2019, 11:17
@EWeiss

für mich ist dieses Thema gerade erst aktuell geworden, ich bin allerdings kein großer Delphi-Programmierer.
Könntest du mir ggf. deinen Code zur Verfügung stellen?

Vielen Dank
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:02 Uhr.
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