Eingabezeile in der Taskleiste

Für alles, was in den übrigen Lazarusthemen keinen Platz, aber mit Lazarus zutun hat.
Antworten
John.Doe
Beiträge: 1
Registriert: Mi 28. Jan 2015, 10:56

Eingabezeile in der Taskleiste

Beitrag von John.Doe »

Hallo Forum,

ich möchte gern eine Eingabezeile in der Taskleiste realisieren. Wie zum Beispiel die Bing-Suche, welche sich links neben den Trayicons ansiedelt. Ich denke das geht irgendwie über Symbolleisten. Ich hab aber keine Vermutung wie ich das hin bekomme. Kann mir da jemand einen Tipp/Ansatz geben wie ich das lösen kann? Das Programm soll unter Win7 und 8/8.1 laufen.

Grüße
S. F.

Michl
Beiträge: 2505
Registriert: Di 19. Jun 2012, 12:54

Re: Eingabezeile in der Taskleiste

Beitrag von Michl »

Kannst mal nach "Deskbands" googeln. Bei Embarcadero http://cc.embarcadero.com/item/23879 gibt es ein Beispiel für Delphi herunter zu laden. K.A., ob du das dir auf Lazarus/Freepascal ummünzen kannst (ich habe es weder getestet, noch runtergeladen).

Code: Alles auswählen

type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection; 

RolfW
Beiträge: 1
Registriert: Mo 19. Dez 2016, 08:39

Re: Eingabezeile in der Taskleiste

Beitrag von RolfW »

Hallo Forum,
ich habe genau das mit Delphi gemacht. Kann ich aber bisher noch nicht nach Lazarus konvertieren. Wird ohne Fehler kompiliert, aber beim aktivieren stürzt der Explorer ab.
Egal was ich auch versuche, das BandForm (eine ComboBox) kann nicht erstellt werden. In Delphi wird CreateParented aufgerufen (uDeskBand: TDeskBand.GetWindow).
Ich hab mal das Projekt angehängt.
Vielleicht hat ja jemand eine Lösung?
PS: Nur so zum Ansporn: Debuggen aus der IDE heraus geht auch nicht. Vielleicht, weil der Debugger nicht mit Admin Rechten startet?

Rolf
Dateianhänge
CommandBar.zip
(23.64 KiB) 71-mal heruntergeladen

wp_xyz
Beiträge: 4869
Registriert: Fr 8. Apr 2011, 09:01

Re: Eingabezeile in der Taskleiste

Beitrag von wp_xyz »

Ich hab mir dein Beispiel nicht angesehen. Aber nachdem ich schon öfter Progressbars durch Umsetzen des Parent in die Statuszeile befördert habe, wollte ich es auch mit TEdit probieren - es funktioniert. Allerdings kann man mit Edit.Left das Element nicht positionieren, stattdessen funktioniert Edit.BorderSpacing.Left.

Code: Alles auswählen

procedure TForm1.FormCreate(Sender: TObject);
begin
  Edit1.Parent := Statusbar1;
  Edit1.BorderSpacing.Left := 200;
end


[EDIT]
Ah sorry - da habe ich Taskleiste und Statusleiste vermischt... Bitte Post ignorieren.

Antworten