Scrollbare und ziehbare Tabs |
Willkommen, Gast ( Anmelden | Registrierung )
Scrollbare und ziehbare Tabs |
13.12.2010 - 13:42
Beitrag
#1
|
|
Rookie Gruppe: Banned Beiträge: 1 Mitglied seit: 13.12.2010 Mitglieds-Nr.: 8.052 |
Aus verschiedenen Gründen benutze ich nicht phase5 sondern proton zum editieren meiner Quellen.
Da der 3.3PR1 leider ein paar Macken hat (allen voran das Problem, dass durch den Dateimanager kein Arbeiten im Netrzwerk möglich ist, da bei jedem Tabwechsel die Verzeichnisliste neu einliest anstatt sie zu cachen und bei identischem Verzeichnis das Einlesen trotzdem durchführt) ist die Version 3.2 im Einsatz. Die kleinen Hauptfunktionen, die mir fehlen betreffen die Quell-Tabs: Funktion 1. Kein Scrollen durch die Tabs per Maus möglich, nur über die Tasten <> - vor allem bei vielen offenen Quellen ist das sehr umständlich. Funktion 2. Kein Drag'n'Drop der Tabs möglich um die Anordnung zu ändern. Da die Quellen leider nicht zugänglich sind (dort wäre das nur kleine Änderungen) suche ich nach einer anderen Möglichkeit das zu lösen. Möglichkeit 0: Anderen Editor benutzen --> fällt erst einmal aus... Möglichkeit 1: Plugin (wenn ich das richtig verstanden habe sind diese nur auf "Klick" aktiv, nicht die komplette Zeit) Möglichkeit 2: Ändern des Binaries über ResHack und Co (geht übrigens nur in Version 3.2, da die 3.3 komprimiert ist). Möglichkeit 3: Realisierung über externes Programm und Windows-Hook (das dürfte recht kompliziert werden). Die Möglichkeit 2 habe ich bereits wie folgt ausprobiert um Problem 1 zu umgehen: proton.exe öffnen, Ressource TRFMEDIT (enthällt alle Hauptkomponenten) von QUELLTEXT object TabControl: TTabControl auf Left = 0 Top = 28 Width = 622 Height = 25 Align = alTop TabOrder = 2 OnChange = TabControl2Change OnMouseDown = TabControlMouseDown OnMouseUp = TabControlMouseUp end QUELLTEXT object TabControl: TTabControl ändern, damit wird das nicht Scrollbar aber alle Tabs werden angezeigt. Problem: Da sich die Höhe leider nicht wie in der Code-Hilfe von Borland angegeben dynamisch anpasst (eventuell muss da noch ein anderer Wert modifiziert werden, aktiviert man AutoSize schmiert das ganze ab) sind in meiner Änderung nun immer fest 3 Zeilen für die Tabs reserviert. Hat man zu viele Tabs sind diese nicht mehr sichtbar, hat man nur ein paar Dateien offen ist der Platz ungenutzt.Left = 0 Top = 28 Width = 622 Height = [b]60 MultiLine = True [/b] Align = alTop TabOrder = 2 OnChange = TabControl2Change OnMouseDown = TabControlMouseDown OnMouseUp = TabControlMouseUp end Um das eigentliche Problem zu lösen müsste man nur Wissen, wie man die aktuelle Position im TTabControl ändern kann und die Methodenaufrufe OnMouseWheelDown und OnMouseWheelUp entsprechend angeben. Für Problem 2 habe ich mich mit DragMode = dmAutomatic versucht, aber das scheint wohl wenn dann nicht auf das TTabControl sondern auf die Tabs selbst gesetzt werden zu müssen - und die werden dynamisch zur Laufzeit erzeugt... Fällt jemandem zu o. g. Problemen etwas ein? Danke, proton |
|
|
Vereinfachte Darstellung | Aktuelles Datum: 01.11.2024 - 1:16 |