Seite 3 von 5
Verfasst: 24.07.2008 18:43
von marco2007
Jup, man muss dann allerdings scrollen, wenn man die Taskleiste sehen will

Verfasst: 24.07.2008 18:45
von ts-soft
Virtuelle Auflösung? Die braucht Kaeru dann aber nicht. Hab mich schon
erschrocken, sah Dich schon mit der Lupe vorm Monitor

Verfasst: 24.07.2008 18:54
von marco2007
Das schlimme, ich habe mich sogar vertan..naja schätzen ist nicht mein Ding
Ich hab`s mal gemessen: 39cm sind eigentlich 15,35"
Naja, der Acer Aspire 3630 war vor 2 Jahren der billigste beim MediaMarkt.
Verfasst: 24.07.2008 19:18
von Kaeru Gaman
ok... ich danke euch erstmal für den Überblick.
die wichtigste Erkenntnis: es gibt keine allgemeingültige Reihenfolge,
aus denen ein Algorithmus irgendwelche Schlüsse ziehen könnte.
Verfasst: 29.07.2008 18:05
von Kaeru Gaman
meine weiteren Überlegungen laufen folgendermaßen:
1.)
man speichert alle möglichen screenmodes, sortiert sich die mit 32bit raus,
die 16bit noch zusätzlich bzw. natürlich braucht man die, falls kein 32bit verfügbar ist.
(hab ich auf nem älteren Laptop schon erlebt)
jetzt ermittelt man die momentane desktopauflösung, ermittelt deren seitenverhältnis,
und zieht daraus den (ein klein bischen gewagten) schluß, ob das Display Wide ist oder normal.
anhand dieser folgerung kann man dann die möglichen modes aus
der liste entfernen, die nicht dem seitenverhältnis entsprechen.
2.)
man erstellt einen beliebig großen WindowedScreen mittig auf einem maximized Window.
natürlich muss man auch hier einmal die desktopauflösung ermitteln,
um die richtige x-koordinate und das RightOffset zu ermitteln.
so kann man einen leicht gestreckten aber seitenkorrekten 800x600 screen
mittig auf einem 1152x864 Desktop darstellen.
Verfasst: 29.07.2008 18:25
von Andreas_S
Hier noch die Daten von mir:
15" Laptop...
- 001: 320x200-32bit @60Hz
002: 320x240-32bit @60Hz
003: 400x300-32bit @60Hz
004: 480x360-32bit @60Hz
005: 512x384-32bit @60Hz
006: 640x350-32bit @60Hz
007: 640x400-32bit @60Hz
008: 640x480-32bit @60Hz
009: 720x400-32bit @60Hz
010: 720x480-32bit @60Hz
011: 720x576-32bit @60Hz
012: 768x576-32bit @60Hz
013: 800x600-32bit @60Hz
014: 852x480-32bit @60Hz
015: 853x480-32bit @60Hz
016: 854x480-32bit @60Hz
017: 864x480-32bit @60Hz
018: 1024x640-32bit @60Hz
019: 1024x768-32bit @60Hz
020: 1152x864-32bit @60Hz
021: 1176x664-32bit @60Hz
022: 1280x720-32bit @60Hz
023: 1280x768-32bit @60Hz
024: 1280x800-32bit @60Hz
025: 1280x854-32bit @60Hz
026: 1360x768-32bit @60Hz
027: 1365x768-32bit @60Hz
028: 1366x768-32bit @60Hz
029: 1440x900-32bit @60Hz
030: 320x200-16bit @60Hz
031: 320x240-16bit @60Hz
032: 400x300-16bit @60Hz
033: 480x360-16bit @60Hz
034: 512x384-16bit @60Hz
035: 640x350-16bit @60Hz
036: 640x400-16bit @60Hz
037: 640x480-16bit @60Hz
038: 720x400-16bit @60Hz
039: 720x480-16bit @60Hz
040: 720x576-16bit @60Hz
041: 768x576-16bit @60Hz
042: 800x600-16bit @60Hz
043: 852x480-16bit @60Hz
044: 853x480-16bit @60Hz
045: 854x480-16bit @60Hz
046: 864x480-16bit @60Hz
047: 1024x640-16bit @60Hz
048: 1024x768-16bit @60Hz
049: 1152x864-16bit @60Hz
050: 1176x664-16bit @60Hz
051: 1280x720-16bit @60Hz
052: 1280x768-16bit @60Hz
053: 1280x800-16bit @60Hz
054: 1280x854-16bit @60Hz
055: 1360x768-16bit @60Hz
056: 1365x768-16bit @60Hz
057: 1366x768-16bit @60Hz
058: 1440x900-16bit @60Hz
059: 320x200-8bit @60Hz
060: 320x240-8bit @60Hz
061: 400x300-8bit @60Hz
062: 480x360-8bit @60Hz
063: 512x384-8bit @60Hz
064: 640x350-8bit @60Hz
065: 640x400-8bit @60Hz
066: 640x480-8bit @60Hz
067: 720x400-8bit @60Hz
068: 720x480-8bit @60Hz
069: 720x576-8bit @60Hz
070: 768x576-8bit @60Hz
071: 800x600-8bit @60Hz
072: 852x480-8bit @60Hz
073: 853x480-8bit @60Hz
074: 854x480-8bit @60Hz
075: 864x480-8bit @60Hz
076: 1024x640-8bit @60Hz
077: 1024x768-8bit @60Hz
078: 1152x864-8bit @60Hz
079: 1176x664-8bit @60Hz
080: 1280x720-8bit @60Hz
081: 1280x768-8bit @60Hz
082: 1280x800-8bit @60Hz
083: 1280x854-8bit @60Hz
084: 1360x768-8bit @60Hz
085: 1365x768-8bit @60Hz
086: 1366x768-8bit @60Hz
087: 1440x900-8bit @60Hz
Allover Number of Modes: 87
Verfasst: 29.07.2008 18:26
von rolaf
Wenn noch was bringt (erst jetzt den Thread gelesen) hier meine Daten:
Alter 13,3" Lappi (Toshiba Portege 7020CT):
Code: Alles auswählen
001: 640x480-8bit @60Hz
004: 640x480-16bit @60Hz
007: 640x480-24bit @60Hz
010: 800x600-8bit @60Hz
013: 800x600-16bit @60Hz
016: 800x600-24bit @60Hz
019: 1024x768-8bit @60Hz
023: 1024x768-16bit @60Hz
027: 640x400-8bit @60Hz
029: 640x400-16bit @60Hz
031: 320x200-8bit @60Hz
033: 320x240-8bit @60Hz
035: 1024x768-24bit @60Hz
039: 1280x1024-8bit @60Hz
040: 320x200-16bit @60Hz
043: 320x240-16bit @60Hz
Allover Number of Modes: 44
17" Yüsmart TFT:
Code: Alles auswählen
016: 640x480-8bit @60Hz
017: 640x480-16bit @60Hz
018: 640x480-32bit @60Hz
031: 800x600-8bit @60Hz
032: 800x600-16bit @60Hz
033: 800x600-32bit @60Hz
040: 1024x768-8bit @60Hz
041: 1024x768-16bit @60Hz
042: 1024x768-32bit @60Hz
049: 1152x864-8bit @60Hz
050: 1152x864-16bit @60Hz
051: 1152x864-32bit @60Hz
055: 1280x600-8bit @60Hz
056: 1280x600-16bit @60Hz
057: 1280x600-32bit @60Hz
058: 1280x720-8bit @60Hz
059: 1280x720-16bit @60Hz
060: 1280x720-32bit @60Hz
064: 1280x768-8bit @60Hz
065: 1280x768-16bit @60Hz
066: 1280x768-32bit @60Hz
070: 1280x960-8bit @60Hz
071: 1280x960-16bit @60Hz
072: 1280x960-32bit @60Hz
076: 1280x1024-8bit @60Hz
077: 1280x1024-16bit @60Hz
078: 1280x1024-32bit @60Hz
088: 480x640-8bit @60Hz
089: 480x640-16bit @60Hz
090: 480x640-32bit @60Hz
103: 600x800-8bit @60Hz
104: 600x800-16bit @60Hz
105: 600x800-32bit @60Hz
112: 768x1024-8bit @60Hz
113: 768x1024-16bit @60Hz
114: 768x1024-32bit @60Hz
121: 864x1152-8bit @60Hz
122: 864x1152-16bit @60Hz
123: 864x1152-32bit @60Hz
124: 600x1280-8bit @60Hz
125: 600x1280-16bit @60Hz
126: 600x1280-32bit @60Hz
127: 720x1280-8bit @60Hz
128: 720x1280-16bit @60Hz
129: 720x1280-32bit @60Hz
130: 768x1280-8bit @60Hz
131: 768x1280-16bit @60Hz
132: 768x1280-32bit @60Hz
133: 960x1280-8bit @60Hz
134: 960x1280-16bit @60Hz
135: 960x1280-32bit @60Hz
136: 1024x1280-8bit @60Hz
137: 1024x1280-16bit @60Hz
138: 1024x1280-32bit @60Hz
Allover Number of Modes: 138
Verfasst: 29.07.2008 18:31
von Kaeru Gaman
yo danke.
wie gesagt, die bisherige statistik hat bereits genügt, um zu sehen,
dass man mit der nativen Liste nicht SO viel anfangen kann.
das Kernproblem ist, dass man auf einem Widescreen zwar ein 4:3 Screen öffnen kann,
dass der bei den möglichen Einstellungen aufgelistet wird, der dann aber verzerrt dargestellt wird.
also muss man irgendwie herausfinden, ob es ein Wide-Display ist,*
oder aber gleich mit nem WindowedScreen arbeiten.
*) vielleicht gibts dafür auch ne API, aber mir wäre erstmal eine native PB-Lösung lieber...
... ist aber auch nicht so high-priority, ich wills nur generell wissen wies geht für zukünftige projekte ...
Verfasst: 29.07.2008 20:45
von Andreas_S
Vil. so... :
Code: Alles auswählen
Procedure ggT(a, b)
If a = b Or b = 0
ProcedureReturn a
Else
ProcedureReturn ggT(b, a % b)
EndIf
EndProcedure
ExamineDesktops()
width = DesktopWidth(0)
height = DesktopHeight(0)
ggT = ggT(width, height)
sv$ = Str(width / ggT) + " : " + Str(height / ggT)
Debug sv$
... da der Desktop normalerweise im Verhältnis ist...
Verfasst: 29.07.2008 20:52
von Kaeru Gaman
ah, der rekursive ggT, schön ihn mal wieder zu lesen.
...für diesen fall würde ein einfacher faktor jedoch genügen...
Code: Alles auswählen
Debug " 4: 3 = " + StrF( 4/ 3,3)
Debug " 5: 4 = " + StrF( 5/ 4,3)
Debug "16: 9 = " + StrF(16/ 9,3)
Debug "16:10 = " + StrF(16/10,3)
Debug "-------------"
Debug "1280x 960 = " + StrF(1280/ 960,3)
Debug "1280x1024 = " + StrF(1280/1024,3)
Debug "1280x 720 = " + StrF(1280/ 720,3)
Debug "1280x 800 = " + StrF(1280/ 800,3)
man könnte also sagen, Wide > 1.5, Normal < 1.5