ich habe folgendes Problem:
Ich habe eine kleine Anwendung geschrieben, die eine Website lädt und man soll sich ein wenig damit durch diese navigieren können (wie ein stark eingeschränkter Browser, mit ein paar Spezialitäten). Dabei bin ich auf einen Fehler gestoßen, den ich nicht lösen kann, obwohl ich ihn auf ein minimum an Komplexität reduzieren konnte:
Code: Alles auswählen
webview = new QWebView(this);
QDir dir;
QUrl url = QUrl::fromLocalFile(dir.absolutePath().append("//test.htm"));
webview->load(url);
Code: Alles auswählen
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<style type="text/css" media="screen">
#myid {
font-size: 11px;
height: 200px;
overflow: auto;
width: 100%;
}
</style>
</head>
<body>
<div id="myid">
LOTS OF LINEBREAKS HERE SO THE 200PX ARE REACHED!
</div>
LOTS OF LINEBREAKS HERE
</body>
</html>
Geht man weiter und scrollt dann ein wenig nach unten, so verschiebt sich alles sehr seltsam, wobei das lediglich ein Anzeigebug ist. Obwohl sich die Anzeige von den Texten verschiebt, kann man die Texte an der Stelle markieren, an der sie eigentlich sein sollten.
Ist das Div nur so voll, dass es gerade keine Scrollbar benötigt, so funktioniert alles.
Das Problem tritt nur unter Windows XP auf, aber leider muss die Anwendung auch da laufen
Verwendet wird MinGW und Qt 5.2.0.
Hier sind noch ein paar Bilder:
So sieht es anfangs aus:

Nach erstem runter Scrollen

Und hier noch einmal mit Text-Auswahl

Es wäre echt total cool, wenn jemand eine Idee hat, woher das kommt.
Ein Quickfix / Workaround wäre natürlich auch nett
Grüße
Dominik
PS: Einfacher sieht man den Bug indem man in einem QWebView die folgende Adresse lädt:
http://stackoverflow.com/questions/1706 ... er-sethtml
Da tritt der selbe Fehler auf.