Pracuję nad dużą aplikacją delphi z toną starego kodu, który jest konwertowany na xe2. Wdrażam style vcl iw większości przypadków nie ma problemu.Delphi XE2 VCL style nie rysuje poprawnie Tabsheets
Jednak w przypadku niektórych formularzy, szczególnie w przypadku, gdy posiadam tpanel, z kontrolką strony i zakładkami na arkuszach, tabele czasami nie rysują poprawnie. Wyświetlają obraz, który wcześniej znajdował się w obszarze, w którym znajduje się arkusz. Tak więc po pierwszym wyświetleniu formularza będzie to ekran tła na moim komputerze, ale jeśli zmienię karty, zakładki tła/etykiety/komponenty wydają się zachodzić na siebie.
Dzieje się tak tylko wtedy, gdy używam stylów vcl, jeśli nie zastosuję stylu, wszystko wygląda normalnie.
Występuje tylko na niektórych kartach. Próbowałem wyizolować konkretną właściwość lub wywołanie metody (lub jej brak), które mogą być przyczyną tego problemu, ale naprawdę mam problemy, szczególnie biorąc pod uwagę czysty rozmiar metod zwanych w tym kodzie (w niektórych formach, metoda, która strzela na zakładce zmiana przekracza 1000 linii kodu).
Poszedłem zrobić kilka zrzutów ekranu, aby zademonstrować to zdarzenie, ale formularze na zrzutach ekranu są renderowane poprawnie. Sugeruje to mi, że istnieje pewien związek między tym, co widzę, a tym, co jest "tam".
Każda rada byłaby najbardziej ceniona.
Co zawartość zrzut ekranu różni się od tego, co faktycznie zobaczyć na ekranie –
@MrLister Tak? , mo dziwna rzecz, którą widziałem. – Elissa
Czy istnieje niestandardowy rysunek w kodzie (poszukaj "OnDraw")? Czy miesza się z DoubleBuffering lub innymi właściwościami, które mogą wpływać na budowanie ekranu? –