AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

JvNetscapeSplitter automatisieren

Ein Thema von fkerber · begonnen am 12. Mai 2006 · letzter Beitrag vom 12. Mai 2006
Antwort Antwort
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#1

JvNetscapeSplitter automatisieren

  Alt 12. Mai 2006, 15:32
Hallo!

Und schon wieder eine Frage...

Diesmal geht es um eine Komponente aus der JVCL: JvNetscapeSplitter.
Damit ist es möglich, z.B. ein Panel zum Rand hin "verschwinden" zu lassen.

Allerdings ist dies anscheinend nur per Klick auf den entsprechenden Button möglich. Jetzt würde ich gerne dieses Ausblenden automatisch vornehmen lassen.

Das einzige was irgendwie nach automatisieren aussieht ist die Methode Perform, die eine Message und zwei Parameter erwartet.

Dummerweise weiß ich aber nicht, welche Message, welche Parameter etc.

Vielleicht kann mir einer von euch helfen?


Ciao Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
s-off
(Gast)

n/a Beiträge
 
#2

Re: JvNetscapeSplitter automatisieren

  Alt 12. Mai 2006, 15:43
Hallo,

ich hoffe, dass ich Dich richtig verstehe, und daher wundert es mich, dass Du es nicht mit

JvNetscapeSplitter1.Minimized := True;
versuchst :-/
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#3

Re: JvNetscapeSplitter automatisieren

  Alt 12. Mai 2006, 17:11
Hi!

Das hat leider einen äußerst negativen Effekt:

Der Pfeil auf dem "Button" dreht sich nicht rum. Das ist jetzt allerdings kein kosmetisches Problem, sondern auch ein praktisches:
Wenn man jetzt wieder auf den Button klickt, dann wird nicht wieder ausgeklappt, sondern es wird jetzt erst richtig eingeklappt (also die Pfeile rumgedreht) und erst beim nächsten Klick kann man wieder ausklappen.

Das ist schlecht....


Ciao Frederic
Miniaturansicht angehängter Grafiken
nachher_150.jpg   vorher_126.jpg  
Frederic Kerber
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#4

Re: JvNetscapeSplitter automatisieren

  Alt 12. Mai 2006, 18:13
Zur Info (für andere) WMLButtonUp sieht so aus:
Delphi-Quellcode:
procedure TJvCustomNetscapeSplitter.WMLButtonUp(var Msg: TWMLButtonUp);
var
  CurPos: TPoint;
  OldMax: Boolean;
begin
  inherited;

  if FGotMouseDown then
  begin
    if ButtonHitTest(Msg.XPos, Msg.YPos) then
    begin
      CurPos := ClientToScreen(Point(Msg.XPos, Msg.YPos));
      // More than a little movement is not a click, but a regular resize.
      if ((Align in [alLeft, alRight]) and
        (Abs(FDownPos.X - CurPos.X) <= MOVEMENT_TOLERANCE)) or
        ((Align in [alTop, alBottom]) and
        (Abs(FDownPos.Y - CurPos.Y) <= MOVEMENT_TOLERANCE)) then
      begin
        StopSizing;
        if ButtonStyle = bsNetscape then
          Maximized := not Maximized
        else
          case WindowButtonHitTest(Msg.XPos, Msg.YPos) of
            wbMin:
              Minimized := not Minimized;
            wbMax:
              Maximized := not Maximized;
            wbClose:
              DoClose;
          end;
      end;
    end;
    FGotMouseDown := False;
  end
  else
    if AllowDrag then
  begin
    FindControl;
    if FControl = nil then
      Exit;

    OldMax := FMaximized;
    case Align of
      alLeft, alRight:
        FMaximized := FControl.Width <= MinSize;
      alTop, alBottom:
        FMaximized := FControl.Height <= MinSize;
    end;
    if FMaximized then
    begin
      UpdateControlSize(MinSize);
      if not OldMax then
        DoMaximize;
    end
    else
    begin
      case Align of
        alLeft, alRight:
          FRestorePos := FControl.Width;
        alTop, alBottom:
          FRestorePos := FControl.Height;
      end;
      if OldMax then
        DoRestore;
    end;
  end;
  Invalidate;
end;
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#5

Re: JvNetscapeSplitter automatisieren

  Alt 12. Mai 2006, 19:36
Hi!

Fragt mich nicht warum, aber so klappt das automatische Zuklappen:

Delphi-Quellcode:
  JVNetscapeSplitter1.Minimized:=true;
  JVNetscapeSplitter1.Maximized:=true;
  JVNetscapeSplitter1.Refresh;



Ciao Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
s-off
(Gast)

n/a Beiträge
 
#6

Re: JvNetscapeSplitter automatisieren

  Alt 12. Mai 2006, 19:41
*lacht*
  Mit Zitat antworten Zitat
Antwort Antwort


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 18:23 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