![]() |
Vorschau auf tabsheet das nicht aktiv ist, ohne Show
Hallo NG,
ich würde gerne den Inhalt eines Tabsheets bei Rechtsklick auf seinen Reiter irgendwie anzeigen, ohne die Change oder Showmethode des Pagecontrols oder Tabsheets auszulösen (peek). Gibts da eine mir noch nicht bekannte möglichkeit? Danke für Ideen Gruss Matthias |
Re: Vorschau auf tabsheet das nicht aktiv ist, ohne Show
Hallo Matthias,
das klingt stark nach "wasch mich aber mach mich nicht nass". Kannst du das näher erläutern? Grüße vom marabu |
Re: Vorschau auf tabsheet das nicht aktiv ist, ohne Show
Ja, genau.
Bei der Showmethode werden viele Daten geladen, was lange dauern kann. jetzt wäre es von vorteil wenn mann noch mal was nachschauen könnte, ohne die Showmethode auszulösen. Ein peek eben. Mehr kann ich nicht beschreiben. Ich denke für eine Antwort sollte das auch genügen. Nochwas: beim aktivieren SOLLEN die Daten aktualisiert werden, ein Merker ob die Daten bereits geladen wurden nutzt also nichts. Gruss Matthias |
Re: Vorschau auf tabsheet das nicht aktiv ist, ohne Show
So kannst du feststellen, über welchem Tab die Maus sich befindet:
Delphi-Quellcode:
Wie du deine Information dann anzeigst - automatisch in deinem HintWindow oder über das Kontextmenü in einem InfoDialog - bleibt dir überlassen.
procedure TDemoForm.PageControlMouseMove(Sender: TObject; Shift: TShiftState;
X, Y: Integer); begin Caption := IntToStr(PageControl.IndexOfTabAt(X, Y)); end; marabu |
Re: Vorschau auf tabsheet das nicht aktiv ist, ohne Show
Zitat:
Wie kann ich diese Informationen anzeigen, ohne sie nochmals aufzubereiten, quasi ein Screenshot des Tabsheets? Das mit der Maus ist schon klar. Gruss Matthias |
Re: Vorschau auf tabsheet das nicht aktiv ist, ohne Show
Also auf deutsch: Die Daten stehen schon im Tabsheet und du willst an sie ran?
Willst du einen echten Screenshot oder willst du nur die Daten? |
Re: Vorschau auf tabsheet das nicht aktiv ist, ohne Show
ich will halt nicht nochmal alle Controls auswerten, vielleicht wäre tatsächlich ein Bitmap des Tabsheets beim Show eine Lösung...
mal sehen.. Gruss Matthias |
Re: Vorschau auf tabsheet das nicht aktiv ist, ohne Show
Meine OH sagt mir, dass jedes
![]() ![]() greetz Mike |
Re: Vorschau auf tabsheet das nicht aktiv ist, ohne Show
PaintTo klingt vielversprechend... :P
mal ausprobieren. Danke einstweilen Gruss Matthias |
Re: Vorschau auf tabsheet das nicht aktiv ist, ohne Show
Delphi-Quellcode:
Habs so probiert, oder alle Controls einzeln.
procedure TForm1.PageControl3MouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer); var tab :TTabSheet; position :TPoint; bmp :TBitmap; frm :TForm; i :integer; begin inherited; if Button = mbRight then begin position.X:=X; position.Y:=Y; tab := GetTabSheet(PageControl3,position); if tab <> nil then begin frm := TForm.Create(Self); frm.Width := tab.Width+10; frm.Height := tab.Height+10; frm.Top :=0; frm.Left :=0; frm.Canvas.Lock; tab.PaintTo(frm.Canvas,frm.Top+2,frm.Left+2); (* for i := 0 to tab.ComponentCount-1 do begin if (tab.Components[i] is TWinControl) then with (tab.Components[i] as TWinControl) do begin PaintTo(frm.Canvas,top,left); end; end; *) frm.Canvas.Unlock; frm.AlphaBlend := true; frm.AlphaBlendValue := 200; frm.ShowModal; FreeAndNil(frm); end; end; end; In beide Fällen wird ein leeres Form angezeigt. Was muss ich noch beachten? Gruss Matthias |
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:48 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz