Copy/Paste in IDE verändert Programmverhalten - strange!

Hier werden, insbesondere in den Beta-Phasen, Bugmeldungen gepostet. Das offizielle BugForum ist allerdings hier.
Benutzeravatar
Kurzer
Beiträge: 1618
Registriert: 25.04.2006 17:29
Wohnort: Nähe Hamburg

Copy/Paste in IDE verändert Programmverhalten - strange!

Beitrag von Kurzer »

Hallo zusammen,

folgendes Problem habe ich mit der 4.41 und auch der 4.50 b4 festgestellt.
Es geht um den Beispielcode "CreateWindowEx.pb" aus dem Codearchiv:

- Lädt man den Beispielcode per Dateiexplorer der PB-IDE direkt in den Editor und führt ihn aus, dann arbeitet er wie erwartet.
- Kopiert man nun diesen Quellcode mittels CTRL-A und CTRL-C und fügt ihn unverändert in einen neuen TAB der IDE ein, dann funktioniert das Erstellen des Buttons und auch die Auswertung der WM_CLOSE Message nicht mehr.

Ich kanns mir nicht erklären.

Hier ein Screenvideo davon (XVid codec, 2 MB)
Zuletzt geändert von Kurzer am 18.05.2010 13:53, insgesamt 1-mal geändert.
"Never run a changing system!" | "Unterhalten sich zwei Alleinunterhalter... Paradox, oder?"
PB 6.12 x64, OS: Win 11 24H2 x64, Desktopscaling: 150%, CPU: I7 12700 H, RAM: 32 GB, GPU: Intel(R) Iris(R) Xe Graphics | NVIDIA GeForce RTX 3070
Useralter in 2025: 57 Jahre.
Jilocasin
Beiträge: 665
Registriert: 13.05.2006 16:04
Kontaktdaten:

Re: Copy/Paste in IDE verändert Programmverhalten - strange!

Beitrag von Jilocasin »

Weder Winamp, noch VLC futtert das Video, obwohl ich den ganzen xvid codec quark eigentlich installiert hab O.o

Mir fiel spontan nur ein, dass es eine Compilereinstellung sein könnte, die in der .pb Datei eben angegeben ist und beim Text-Kopieren verloren geht? :?
Bild
Benutzeravatar
Kurzer
Beiträge: 1618
Registriert: 25.04.2006 17:29
Wohnort: Nähe Hamburg

Re: Copy/Paste in IDE verändert Programmverhalten - strange!

Beitrag von Kurzer »

Ups, sorry. Ich hatte noch den Ogg Theora codec aktiviert. Habe das Video oben jetzt ausgetauscht, nun ist es wirklich XVid.

Davon ab hast du recht mit den Compilereinstellungen, Jilocasin. Schalte ich die XP-Skinunterstützung aus, dann ist der Button wieder zu sehen und das Programm reagiert wie erwartet.

Aber warum ist das so?
Eine normale in C geschriebene Fensteranwendung würde doch genau so aussehen, oder?
"Never run a changing system!" | "Unterhalten sich zwei Alleinunterhalter... Paradox, oder?"
PB 6.12 x64, OS: Win 11 24H2 x64, Desktopscaling: 150%, CPU: I7 12700 H, RAM: 32 GB, GPU: Intel(R) Iris(R) Xe Graphics | NVIDIA GeForce RTX 3070
Useralter in 2025: 57 Jahre.
freak
PureBasic Team
Beiträge: 766
Registriert: 29.08.2004 00:20
Wohnort: Stuttgart

Re: Copy/Paste in IDE verändert Programmverhalten - strange!

Beitrag von freak »

Da fehlt der Aufruf von InitCommonControls[Ex]_()
Benutzeravatar
Kurzer
Beiträge: 1618
Registriert: 25.04.2006 17:29
Wohnort: Nähe Hamburg

Re: Copy/Paste in IDE verändert Programmverhalten - strange!

Beitrag von Kurzer »

Super, klappt. :allright:
;... Auszug aus "CreateWindowEx.pb" ...
CreateWindowEx_(0, "Static", "", #WS_CHILD | #WS_VISIBLE | $12, 9, 9, 102, 22, hWndMain, 0, 0, 0)
CreateWindowEx_(0, "Button", "Button 1", #WS_CHILD | #WS_VISIBLE, 10, 10, 100, 20, hWndMain, 0, 0, 0)

icc.INITCOMMONCONTROLSEX
icc\dwSize = SizeOf(INITCOMMONCONTROLSEX)
icc\dwICC = #ICC_STANDARD_CLASSES
InitCommonControlsEx_(@icc)
;...
Der Aufruf direkt nach Erzeugung des Controls ist hoffentlich richtig.
"Never run a changing system!" | "Unterhalten sich zwei Alleinunterhalter... Paradox, oder?"
PB 6.12 x64, OS: Win 11 24H2 x64, Desktopscaling: 150%, CPU: I7 12700 H, RAM: 32 GB, GPU: Intel(R) Iris(R) Xe Graphics | NVIDIA GeForce RTX 3070
Useralter in 2025: 57 Jahre.
freak
PureBasic Team
Beiträge: 766
Registriert: 29.08.2004 00:20
Wohnort: Stuttgart

Re: Copy/Paste in IDE verändert Programmverhalten - strange!

Beitrag von freak »

Es gehört davor, weil es dafür sorgt das die Fensterklassen initialisiert werden.
Antworten