guten morgen allerseits
ersteinmal bitte ich um entschuldigung, wenn ich den falschen thread erwischt habe, ich wusste nicht, wo mein anliegen am besten reinpasst

ich habe leider wieder mal ein problem und bräuchte daher mal eure hilfe...
ich bin gerade dabei, ein spiel zu programmieren und bin damit auch schon fast durch (nur noch ein bisschen "feintuning"... =) )
letztens habe ich auch einen vollbildmodus implementiert. der folgende code ist hier:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| procedure TfrmTD2.lblFullscreenClick(Sender: TObject); begin Left:=0; Top:=0; frmTD2.BorderStyle:=bsNone; frmTD2.FormStyle:=fsStayOnTop; ChangeRes(800,600,0,True); shpFullscreen.Visible:=False; lblFullscreen.Visible:=False; end; |
das ändern der auflösung ist nicht das problem, alles funktioniert super. jedoch reagiert das programm nach dem wechsel überhaupt nicht mehr auf irgendwelche tasten, also OnKeyPress ereignisse! außerdem tritt noch etwas anderes seltsames auf: das spiel ist ein schießspiel und man kann über das mausrad die waffen wechseln. (nach unten ist jeweils die nächste waffe; wenn waffe=5 dann waffe=1...) dies geht auch über die jeweiligen ereignisse vom formular.
den code kann ich auch gerne noch einmal posten...
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
| procedure TfrmTD2.FormMouseWheelDown(Sender: TObject; Shift: TShiftState; MousePos: TPoint; var Handled: Boolean); begin if tmrCadence.Enabled then begin inc(ThisGame.Waffe); if ThisGame.Waffe=5 then ThisGame.Waffe:=1; imgWaffe.Picture.LoadFromFile('img/weapon'+IntToStr(ThisGame.Waffe)+'.bmp'); lblMunition.Caption:=IntToStr(Munition[pred(ThisGame.Waffe)]); Zeiger(ThisGame.Waffe); end; end; |
ich habe also 4 waffen. im vollbildmodus habe ich scheinbar nur noch 2 waffen. er wechselt nur noch zwischen der ersten und der zweiten. ich habe in dem programm auch noch andere komponenten mit den genannten ereignissen, habe diese aber alle zusammengelegt (also auf FormKeyPress). auf anderen rechnern funktionieren die sachen ebenfalls nicht.
das verwunderliche:
wenn ich ...
frmTD2.BorderStyle:=bsNone;
frmTD2.FormStyle:=fsStayOnTop;
... rausnehme, funktioniert alles wunderbar.
ich weiß nicht mehr, was ich machen soll, hab schon alle möglichen foren und google abgegrast, leider ohne erfolg. habe auch schon ziemlich viel mit den eigenschaften gespielt in delhi, brachte aber auch nichts...
deswegen wär ich ziemlich dankbar, wenn mit hier jemand helfen könnte! wenn ihr noch mehr code braucht, werde ich den natürlich gerne posten!
vielen dank schon mal fürs lesen
gruß Myribo