[Delphi] p'tit blem de conversion

p'tit blem de conversion [Delphi] - Delphi/Pascal - Programmation

Marsh Posté le 10-02-2003 à 23:07:57    

Code :
  1. WriteToLog("\t%d x %d x 32bit back buffer format selected. Format = %d.", nWidth, nHeight, d3ddm.Format);


 
j'ai une fonction en cpp qui écrit dans un fichier de log et qui s'appelle comme ci-dessus. comment faire un truc similaire en delphi ?
le problème que j'ai est que les arguments ne sont pas forcément en string (comme d3ddm.Format dans ce cas) et je ne sais pas comment les convertir.
 
thx

Reply

Marsh Posté le 10-02-2003 à 23:07:57   

Reply

Marsh Posté le 10-02-2003 à 23:38:03    

Tu fais une fonction WriteToLog qui reçoit juste une chaîne en param, et tu l'appelles comme ça:
 

WriteToLog(Format('%d x %d x 32bit back buffer format selected. Format = %d.', nWidth, nHeight, d3ddm.Format));


 
pour le "\t....." tu peux faire #9 + '.....'


Message édité par antp le 10-02-2003 à 23:38:16

---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 11-02-2003 à 00:01:12    

[Error] Project1.dpr(97): Bad argument type in variable type array constructor
:-/

Reply

Marsh Posté le 11-02-2003 à 09:50:24    

zion a écrit :


 
sans oublier les []  :ange:  


 
ha zut :D

Reply

Marsh Posté le 11-02-2003 à 09:50:42    

dweis a écrit :

[Error] Project1.dpr(97): Bad argument type in variable type array constructor
:-/


 
avec le code donné par Zion ? pcq moi j'avais oublié les [ ]

Reply

Marsh Posté le 14-02-2003 à 14:35:41    

oui c'est l'erreur avec le code de zion

Reply

Marsh Posté le 14-02-2003 à 14:44:01    

l'erreur correspond au code que tu m'as indinqué "WriteToLog(Format('%d x %d x 32bit back buffer format selected. Format = %d.', [nWidth, nHeight, d3ddm.Format]));" que j'ai copié collé.
 
code de writetolog :


procedure CGame.WriteToLog(test : string);
var
  fichier : textfile;
begin
   assignfile(fichier,'test.txt');
   rewrite(fichier);
   writeln(fichier,test);
   close(fichier);
end;


Message édité par dweis le 14-02-2003 à 14:44:28
Reply

Marsh Posté le 14-02-2003 à 14:48:24    


       end;
       result := temp;
       WriteToLog(Format('%d x %d x 32bit back buffer format selected. Format = %d.', [nWidth, nHeight, d3ddm.Format]));
   end;


mais de toute façon, j'ai essayé à pl. endroits, ça merde tjrs.
quand y'a l'erreur delphi place le curseur juste après le crochet de fermeture

Reply

Marsh Posté le 14-02-2003 à 14:49:38    

nWidth, nHeight, d3ddm.Format
ces trois trucs sont bien des entiers ou similaire ?


Message édité par antp le 14-02-2003 à 15:03:00

---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 14-02-2003 à 14:55:08    

dweis a écrit :


       end;
       result := temp;
       WriteToLog(Format('%d x %d x 32bit back buffer format selected. Format = %d.', [nWidth, nHeight, d3ddm.Format]));
   end;


mais de toute façon, j'ai essayé à pl. endroits, ça merde tjrs.
quand y'a l'erreur delphi place le curseur juste après le crochet de fermeture
 


super T 2/3 lignes de codes... 2 end; et un result... à part ça on C rien, aucune déclaration ni rien


---------------
Des bons sites pour Delphi? http://forum.hardware.fr/forum2.php3?post=16838&cat=10 -- informaticien -- http://www.z0rglub.com/phpwebgallery/ -- Delphi :love:
Reply

Marsh Posté le 14-02-2003 à 14:55:08   

Reply

Marsh Posté le 14-02-2003 à 15:07:48    

antp a écrit :

nWidth, nHeight, d3ddm.Format
ces trois trucs sont bien des entiers ou similaire ?


 
nWidth, nHeight : entiers
 
d3ddm.Format : D3DFORMAT ( http://msdn.microsoft.com/library/ [...] format.asp )


Message édité par dweis le 14-02-2003 à 15:07:58
Reply

Marsh Posté le 14-02-2003 à 15:25:24    

et comment tu veux que Format devine comment il doit afficher cette structure ? :o


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 14-02-2003 à 15:47:10    

on s'approche mais c tjrs pas ça ;)
 
Fenetre d'erreur : "Exception EConvertError in module Project1.exe at .......
Format '%d' invalid or incompatible with argument'"

Reply

Marsh Posté le 14-02-2003 à 15:48:29    

Integer(@d3ddm.Format)
 
mais c'est vraiment utile d'avoir l'adresse de ce truc ?


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 14-02-2003 à 15:51:03    

j'pense pas mais bon le tuto le fait donc ça doit bien avoir un but ;)
et puis bon ça pourra tjrs me servir plus tard pour des pb similaires
 
en tout cas merci, ça marche enfin :)

Reply

Marsh Posté le 14-02-2003 à 15:52:29    

zion a écrit :


 
Ehoh, tu sais lire les messages d'erreur ou pas?  :heink:  


 
oui mais bon comme j'ai tjrs pas compris vraiment comment marchait la fonction Format...

Reply

Marsh Posté le 14-02-2003 à 15:56:39    

je l'ai fait bien sur mais c'est pas pour autant que ça m'est évident de mettre Integer(@d3ddm.Format) au lieu de @d3ddm.Format

Reply

Marsh Posté le 14-02-2003 à 15:58:48    

%d = un entier, donc tu dois lui passer un entier
il te dit qu'il a pas le type auquel il s'attendait. logique vu que @ te donne un pointeur


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 14-02-2003 à 16:01:08    

zion a écrit :


 
rien de plus simple
 
format, tu fous le curseur dessus et F1  :D  


 [:f1key]


---------------
Des bons sites pour Delphi? http://forum.hardware.fr/forum2.php3?post=16838&cat=10 -- informaticien -- http://www.z0rglub.com/phpwebgallery/ -- Delphi :love:
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed