Autor |
Beitrag |
Iaa_1
      
Beiträge: 61
|
Verfasst: Mo 08.09.08 19:01
hi leute ich habe eine uhr in ein spiel oben links gebracht indem ich die uhr eingestellt habe das sie über alles ist...
jedoch wenn ich die maus ausversehen beim spielen nach oben links mache klicke ich auf die maus anstatt im spiel das im hintergrund ist
wie kann ich das beheben?
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Mo 08.09.08 19:06
Leider kann ich die Lösung dazu nicht auf einem Silbertablett präsentieren, da mir eben diese ausgegangen sind.
Versuch dich bitte einmal etwas verständlicher auszudrücken ...
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
Iaa_1 
      
Beiträge: 61
|
Verfasst: Mo 08.09.08 19:11
also ich habe eine uhr erstellt...
wenn ich die exe von der Uhr starte habe ich es so gemacht das die Uhr über allen fenstern zu sehen ist doch das problem ist:
wenn ich zb Warrock (ego shooter) spiele und baller kommt die maus manchmal auf die Uhr wodurch sie sichtbar ist...
und wenn ich dann schießen will klicke ich nur auf der Uhr rum (auf der Form der uhr) und net im spiel wodurch ich sterbe
Einloggen, um Attachments anzusehen!
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Mo 08.09.08 19:23
Ach das meinst Du ...
k, also wenn das so ist, dann gibt's drei Möglichkeiten:
1. Nutzung einer Transparenten Form, die nur beim Rumklicken auf der Schrift reagiert
2. Überschreiben des Message-Handlers deiner TForm, so dass diese jegliche Klicks ignoriert
3. Einblenden der Uhrzeit mit einem HUD\GameOverlay über einen Hook
Gibt sicherlich noch weitere, aber die mal der Komplexität nach geordnet.
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
Iaa_1 
      
Beiträge: 61
|
Verfasst: Mo 08.09.08 19:25
also hook scheidet sowas von aus denke ich mal^^
das wäre wirklich schwer für einen anfänger und würde ohne detouring einen Bann von Punkbuster bedeutet xD wegen einer uhr^^
also 1. scheint am einfachsten zu sein jedoch wie mache ich das?
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Mo 08.09.08 19:34
Seit Delphi 7 gibt es die Möglichkeit, AlphaBlending und Transparenz für seine Formulare zu nutzen. Dort einfach eine Transparenzfarbe setzen, die gleiche für deinen Formular-Hintergrund und es sollte wie erwartet funktionieren.
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
Iaa_1 
      
Beiträge: 61
|
Verfasst: Mo 08.09.08 19:51
ok nun ist es perfekt aber wie mache ich es das das spiel dann netmehr so stark ruckelt?
scheint nen richtig starker resourcen fresser zu sein
gibts wege das die uhr so bleiben kann aber mans verringern kann?
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Mo 08.09.08 22:19
Du könntest alternativ auch ein onMouseMove für das Formular einrichten, und dabei das Programm von Links Oben nach Rechts Oben (und umgekehrt) verschieben, sobald die Maus sich auf deinem Programm bewegt ...
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
Iaa_1 
      
Beiträge: 61
|
Verfasst: Di 09.09.08 19:31
ok das geht nun alles wunderbar...
aber wie mache ich es das das teil net alles zum ruckeln bringt?
|
|
Hidden
      
Beiträge: 2242
Erhaltene Danke: 55
Win10
VS Code, Delphi 2010 Prof.
|
Verfasst: Di 09.09.08 19:54
Iaa_1 hat folgendes geschrieben: | ok das geht nun alles wunderbar...
aber wie mache ich es das das teil net alles zum ruckeln bringt? |
Versuch mal Form1.DoubleBuffered := true oder drück dich klarer aus 
_________________ Centaur spears can block many spells, but no one tries to block if they see that the spell is a certain shade of green. For this purpose it is useful to know some green stunning hexes. (HPMoR)
|
|
delphi10
      
Beiträge: 447
Erhaltene Danke: 2
W2K, XP, Vista64, Win7 64
RAD-Studio 2010
|
Verfasst: Di 09.09.08 19:55
Delphi-Quelltext 1: 2:
| Form.DoubleBuffered := True; oder Form.imageUhr.parent.ControlStyle:=imageUhr.parent.ControlStyle+[csOpaque]; |
Eins von beiden sollte das Flimmern beheben.
Edit: Arrgh, ich muß schneller tippeln....
_________________ Salus populi suprema lex esto
Zuletzt bearbeitet von delphi10 am Di 09.09.08 19:57, insgesamt 1-mal bearbeitet
|
|
delphi10
      
Beiträge: 447
Erhaltene Danke: 2
W2K, XP, Vista64, Win7 64
RAD-Studio 2010
|
Verfasst: Di 09.09.08 19:56
delphi10 hat folgendes geschrieben: | Delphi-Quelltext 1: 2:
| Form.DoubleBuffered := True; oder Form.imageUhr.parent.ControlStyle:=imageUhr.parent.ControlStyle+[csOpaque]; |
Eins von beiden sollte das Flimmern beheben. |
Edit: Arrgh, ich muß schneller tippeln....
Bitte löschen..Danke.
_________________ Salus populi suprema lex esto
|
|
Iaa_1 
      
Beiträge: 61
|
Verfasst: Di 09.09.08 20:08
nein es flimmert nicht es ruckelt..
also das SPiel ruckelt
wenn ich ohne die Uhr spiele , ruckelt es nicht
(zb Einheiten bleiben auf der Stelle stehen,die grafik ruckelt, alles sehr langsam)
|
|
Hidden
      
Beiträge: 2242
Erhaltene Danke: 55
Win10
VS Code, Delphi 2010 Prof.
|
Verfasst: Di 09.09.08 20:19
Hi,
Dann musst du den verbrauch deiner Uhr an Arbeitsspeicher reduzieren. Aber das ist ein neues Thema, neuer Thread
mfG,
_________________ Centaur spears can block many spells, but no one tries to block if they see that the spell is a certain shade of green. For this purpose it is useful to know some green stunning hexes. (HPMoR)
|
|
Boldar
      
Beiträge: 1555
Erhaltene Danke: 70
Win7 Enterprise 64bit, Win XP SP2
Turbo Delphi
|
Verfasst: Di 09.09.08 20:24
Ich glaube eher, dass spiel hat aus anderen Gründen was gegen die Uhr. Denn eigentlich braucht sowas nicht so viel ram...
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Di 09.09.08 21:01
Das AlphaBlending von Windows läuft ohne Hardware-Beschleunigung, daher ruckelt das.
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
Yogu
      
Beiträge: 2598
Erhaltene Danke: 156
Ubuntu 13.04, Win 7
C# (VS 2013)
|
Verfasst: Di 09.09.08 21:01
Du könntest versuchen, direkt auf den Bildschirm zu schreiben. Mit Blitz Basic ist das möglich - muss also auch mit Delphi gehen. Dort heißt die Methode DESKTOP BUFFER - vielleicht findest du was bei Google mit ähnlichen Suchbegriffen.
|
|
Boldar
      
Beiträge: 1555
Erhaltene Danke: 70
Win7 Enterprise 64bit, Win XP SP2
Turbo Delphi
|
Verfasst: Di 09.09.08 21:05
Im Prinzip schreibt man auch da nicht direkt auf den Bildschirm, da der Speicher dafür eigentlich im GRAM liegt und somit ausserhalb des Zugriffs. Damit wird auch nur die ONTOP-Anwendung modifiziert.
|
|