Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Scrollbar für große Textdateien (https://www.delphipraxis.net/179470-scrollbar-fuer-grosse-textdateien.html)

tomkupitz 10. Mär 2014 12:28


Scrollbar für große Textdateien
 
Hallo,

das scheint für große Textdateien (Linienanzahl>High(Integer)) nicht zu funktionieren:

Delphi-Quellcode:
 ScrollInfo.cbSize:=SizeOf(ScrollInfo);
  ScrollInfo.fMask:=SIF_ALL;
  ScrollInfo.nMin:=0;
  ScrollInfo.nTrackPos:=0;

  if FItemCount<=High(SmallInt) then
  begin
    ScrollInfo.nMax:=FLinesCount-1;
    ScrollInfo.nPage:=FShowLines;
    ScrollInfo.nPos:=FTopLine;
  end
  else
  begin
    ScrollInfo.nMax:=High(SmallInt);
    ScrollInfo.nPage:=MulDiv(High(SmallInt), FShowLines, FLinesCount);
    ScrollInfo.nPos:=MulDiv(High(SmallInt), FTopLine, FLinesCount);
  end;
Wie kann man das anpassen?

Danke und beste Grüße

Der schöne Günther 10. Mär 2014 13:10

AW: Scrollbar für große Textdateien
 
Nach WinApi kannst du da halt nur einen Integer reinstecken. Da selbst auf einem großen Monitor bei zwei Milliarden Zeilen niemand mehr exakt eine bestimmte wird treffen können kannst du doch auch mit kleineren Zahlen arbeiten?

nuclearping 10. Mär 2014 13:12

AW: Scrollbar für große Textdateien
 
Die Frage ist auch: Wozu stellt jemand 2 Mrd Zeilen (auf einmal) auf dem Bildschirm dar? Gibt es Menschen, die sowas verarbeiten? "Suchen und Ersetzen"? :D

Furtbichler 10. Mär 2014 13:21

AW: Scrollbar für große Textdateien
 
Zitat:

Zitat von nuclearping (Beitrag 1251378)
Wozu stellt jemand 2 Mrd Zeilen (auf einmal) auf dem Bildschirm dar?

Wenn man alle >2 Mrd. Zeilen *auf einmal* auf dem Bildschirm darstellen würde, bräuchte man dann eine Scrollbar? Nee, ne.

Nehmen wir an, ich will eine View auf eine beliebig große Datei darstellen. Ich tippe die Zeilennummer ein und -wupps- bin ich in Zeile 3.789.435.210. Zweitrangig, ob das sinnvoll ist. Aber scheinbar geht das dann nicht ohne Weiteres.

Was Du machen kannst, wäre eine Skalierung. Wenn Du also mehr als 2 Mrd. Zeilen darstellen willst, dann teilst Du alle Werte eben durch 2. Natürlich würdest Du das, was dir eine Scrollbar mitteilt wieder mit 2 multiplizieren.

nuclearping 10. Mär 2014 13:37

AW: Scrollbar für große Textdateien
 
Zitat:

Zitat von Furtbichler (Beitrag 1251380)
Bildschirm darstellen würde, bräuchte man dann eine Scrollbar? Nee, ne.

Ne, aber vermutlich einen relativ großen Bildschirm, idealerweise hochkant gedreht und Font-Size 0.5 oder so. Hat ja auch niemand gesagt, dass das dann noch lesbar sein soll, oder? :mrgreen:

Furtbichler 10. Mär 2014 13:42

AW: Scrollbar für große Textdateien
 
Zitat:

Zitat von nuclearping (Beitrag 1251385)
Hat ja auch niemand gesagt, dass das dann noch lesbar sein soll, oder? :mrgreen:

Du hast es nicht verstanden: Wenn ich alles anzeige (egal wie klein das jetzt ist), dann benötige ich keine Scrollbar, denn ich sehe ja alles schon. Wozu und vor allen Dingen -wohin- soll ich denn dann scrollen?

nuclearping 10. Mär 2014 13:59

AW: Scrollbar für große Textdateien
 
Davon mal abgesehen, dass das langsam ins Thema "schwachsinnige Offtopic-Haarspalterei + will der mich verarschen?" geht: Doch, ich hab dich verstanden. Allerdings macht deine spitzfinde Analyse meines Klammertextes keinen Sinn, da es sich selbst schon ausschliesst, 2 Mrd. Zeilen in einer für den Menschen noch verarbeitbaren Weise "auf einmal" auf dem Bildschirm darzustellen.

Somit sollte es (dachte ich eigentlich) von selbst klar sein, dass ich mit "auf einmal" eine im Kontext dieser Scrollbalken-Diskussion basierte und für einen menschen noch vernünftig wahrnehmbaren Darstellung handelt ... :?

tomkupitz 10. Mär 2014 14:14

AW: Scrollbar für große Textdateien
 
Entwarnung, der obige Code-Schnipsel funktioniert.

Sinn macht das ganze z.B. in einem Memo in dem der Daten-Traffic einer mehrstündigen Messung "gesammelt" wird.


Der EmEditor kann auch solch große Dateien (scrollbar!) anzeigen.

Furtbichler 10. Mär 2014 14:29

AW: Scrollbar für große Textdateien
 
Zitat:

Zitat von nuclearping (Beitrag 1251387)
Davon mal abgesehen...

Klar, bis eben noch ins gleiche Horn blasend (die kleinen Grinsemänner interpretiere ich so) aber -wupps- kaum ertappt beim aus dem Mustopf kommend schon den Zeigefinger heben. Bleib mal Locker, Junge.

nuclearping 10. Mär 2014 17:59

AW: Scrollbar für große Textdateien
 
Zitat:

Zitat von Furtbichler (Beitrag 1251391)
Bleib mal Locker, Junge.

Das kann ich im Prinzip 1:1 zurückgeben. Dich hat keiner gebeten, hier klugsch... Haarspalterei zu betreiben, die auf deiner Unterstellung beruht, dass ich hier "rumtrolle".

Meine Frage, warum jemand soviel Text "auf einmal" auf dem Bildschirm darstellen will, beruhte auf dem Hintergedanken zu erfahren, was er vorhat, um ihm vielleicht eine optimaleren Lösung anzubieten, bzw. herauszuarbeiten.

Also, bleib mal locker, Junge. :thumb:


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:44 Uhr.
Seite 1 von 2  1 2      

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