| Home | Delphi | Download | Spaß | Impressum | eMail | xwatch.de |
![]() ![]() | Symbol in der Taskleiste |
Dafür gibt es eine ganze Reihe von fertigen Komponenten.
WTaskBar
Die Komponente wird vom Hersteller nicht mehr weiterentwickelt. Sie steht aber mitsamt Sourcecode auf xwatch.de weiterhin zur Verfügung.
![]() ![]() | Taskleisten-Eintrag entfernen |
Folgende Zeile entfernt den Eintrag aus der Taskleiste. Das Fenster selbst bleibt jedoch sichtbar.
ShowWindow( Application.Handle, SW_HIDE );
Allerdings muss man aufpassen: Diese Methode ist wahrscheinlich nicht in jedem Fall praktikabel. So berichten einige Programmierer, dass der Algorithmus unter Delphi 3.0 nicht funktioniere. Von anderen habe ich inzwischen gehört, dass sie ihn sehr wohl auch unter D3 und auch D4 benutzen. Fazit: Probieren geht über studieren ;-)
![]() ![]() | Screensaver erstellen |
Um ein Delphi-Projekt als Screensaver zu compilieren, geht man wie folgt vor:
Als erstes fügt man folgende Zeile
{$D SCRNSAVE: Beschreibung des Savers...}
Windows ruft Screensaver mit der Option /c
auf, wenn das Konfigurationsfenster geöffnet werden soll. Falls der
Screen Saver in Aktion treten soll, wird die Option /s angegeben. Also
muss man beim Start festellen, was nun gewünscht ist. Dazu fügt
man ins FormCreate-Event des Hauptformulars folgendes ein:
if ParamCount>0 then
if ParamStr(1)='/c' then
{ Hier Konfigurations-Fenster öffnen}
else if ParamStr(1)='/s' then
{ Hier Screen Saver starten }
Application.Terminate;
end;
![]() ![]() | <Enter> statt <Tab> |
Wenn man erreichen will, dass das nächste Eingabefeld aktiviert wird, sobald der Benutzer auf <Enter> drückt, geht man wie folgt vor: Als Voraussetzung muss man im Formular
TForm1.KeyPreview:=True;
setzen. In der Ereignisroutine OnKeyPress des Formulars fügt man dann folgendes ein:
If Key = #13 Then Begin SelectNext(ActiveControl, True, True); Key := #0; End;
![]() ![]() | Verknüpfung auf dem Desktop |
Ich habe eine Unit zusammen gestellt, welche die Vorgehensweise zeigt.
shortcut von Sven Künzler
![]() ![]() | Drag & Drop |
Drag & Drop Komponenten von Anders Melander und Angus Johnson
Anders Melander und Angus Johnson haben einen ganzen Satz von Komponenten entwickelt, mit denen die verschiedenen Drag & Drop Aufgaben realisiert werden können.
DropWatch von Sven Künzler
Für alle, die nur abfangen wollen, wenn Dateien auf ein Delphi-Formular gedropped werden, können eine einfachere Komponente von meiner Homepage bekommen. Die funktioniert zudem auch mit Delphi 2.0 ;-)
![]() ![]() | Webbrowser aus Delphi-Applikation starten |
Wenn man ShellExecute ein Webdokument, sprich eine URL, übergibt, leitet es sie automatisch an den Webbrowser weiter.
Uses ShellApi; const URL:string='http://www.xwatch.de/'; [...] ShellExecute(Application.MainForm.Handle,NIL,PChar(URL),'','',SW_SHOWNORMAL);
![]() ![]() | Formular fsStayOnTop systemglobal |
Folgender Code muss in den Source des betroffenen Formulars eingefügt werden:
Procedure TFormMini.CreateParams(var Params: TCreateParams);
Begin
// Um sicherzustellen, dass das Fenster über allen
// anderen bleibt, wird der Desktop zum Parent gemacht.
inherited CreateParams(Params);
Params.WndParent:=GetDesktopWindow;
End;
![]() ![]() | Dokumente im Start-Menü eintragen |
Es gibt eine WinAPI-Funktion namens SHAddToRecentDocs, die diese
Aufgabe übernimmt.
Ihr übergibt man eine Zeichenkette, die den Namen der Datei inklusive Pfad enthält. Wenn man stattdessen 0 übergibt, werden alle Einträge aus der Liste gelöscht.
![]() ![]() | Tastendruck an Fenster senden |
Die folgende Codesequenz sendet z.B. den "Tastendruck" <Strg-C> an ActiveControl:
SendMessage(ActiveControl.Handle, WM_KEYDOWN, VK_CONTROL, 0);
SendMessage(ActiveControl.Handle, WM_KEYDOWN, Ord('C'), 0);
SendMessage(ActiveControl.Handle, WM_KEYUP, Ord('C'), 0);
SendMessage(ActiveControl.Handle, WM_KEYUP, VK_CONTROL, 0);