AW: Ersatz für Office Shurtcut unter Windows 10
Zitat:
Ohne gewähr das es unter W10 noch funktioniert. Zitat:
DragDrop also... gruss |
AW: Ersatz für Office Shurtcut unter Windows 10
Zitat:
mmh, gerne, laut Forumhinweis kann ich keine PN an dich senden, hast du nicht zugelassen. Schick mir gerne ne PN. gruss |
AW: Ersatz für Office Shurtcut unter Windows 10
Zitat:
gruss |
AW: Ersatz für Office Shurtcut unter Windows 10
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:
Was soll eigentlich falsch sein an ShellExecute ???
Program Launcher;
Uses Forms, uSimpleLauncher In 'uSimpleLauncher.pas' {wndGUI}; {$R *.res} Begin Application.Initialize; Application.ShowMainForm:= False; Application.CreateForm(TwndGUI, wndGUI); Application.Run; End.
Delphi-Quellcode:
Jetzt nur noch ein paar Bilder oder Icons drauf und den Pfad reinhauen und los geht's...
Procedure StartProgram(Path: String);
Begin ShellExecute(wndGUI.Handle, Nil, PChar(Path), Nil, Nil, SW_SHOW); End; 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... |
AW: Ersatz für Office Shurtcut unter Windows 10
Zitat:
Zitat:
Ob das allerdings so stimmt mag dahingestellt sein. Hab kein W10 gruss |
AW: Ersatz für Office Shurtcut unter Windows 10
Zitat:
Na ja, kann ich leider auch nicht ausprobieren... |
AW: Ersatz für Office Shurtcut unter Windows 10
Zitat:
Da wird alles benutzt was möglich ist. Aber egal. gruss |
AW: Ersatz für Office Shurtcut unter Windows 10
gelöscht Seite 2 übersehen
|
AW: Ersatz für Office Shurtcut unter Windows 10
@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 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:10 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