Paraglider
Messages postés35Date d'inscriptionmercredi 19 mars 2003StatutMembreDernière intervention 6 février 2014
-
19 févr. 2004 à 21:21
yoghisan
Messages postés204Date d'inscriptionsamedi 10 mai 2003StatutMembreDernière intervention 2 juin 2005
-
20 févr. 2004 à 10:10
Bonjour tout le monde,
Je suis plutôt habitué à programmer en VB mais on vient de me demander de modifier une application Delphi et je dois avouer que ça coince pas mal ... !
La modification n'est pas vraiment importante. À l'ouverture,je dois détecter la résolution utilisée par l'utilisateur et ouvrir une feuille en fontion de la résolution.
Je peux détecter la résoluton grâce à screen.width ...J 'ai créé une nouvelle feuille qui détecte la résolution, dans les options du projet j'ai mis cette feuille comme feuille principale mais j'ai une erreur dans Projet Begin Application.CreateForm () ...! J'ai retourné le problème dans tous les sens mais je ne trouve pas l'astuce :-)
Qui pourrait me mettre sur la voie ?
Paraglider
Messages postés35Date d'inscriptionmercredi 19 mars 2003StatutMembreDernière intervention 6 février 20141 20 févr. 2004 à 03:46
Bonjour et merci
Je peux êre plus précis et plus simple. Une application avec deux feuilles A et B .
Explique-moi comment faire pour au lancement d'une application ouvrir la feuille A si j'ai un résolution de 800x600 ou lafeuille B si j'ai une résolution de 1024x768.
Je ne peux pas être plus simple et plus précis. Mon petit problème est résumé en deux lignes :-)
yoghisan
Messages postés204Date d'inscriptionsamedi 10 mai 2003StatutMembreDernière intervention 2 juin 20051 20 févr. 2004 à 10:08
Voila un code qui répond à ta question. Il faut créer une application avec 3 unités (ce que tu appelles feuille).
- Une principale
- Une pour la résolution 800*600
- Une pour la résolution 1024*768
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs;
type
TForm1 = class(TForm)
procedure FormCreate(Sender:TObject);
private
{ Déclarations privées }
public
{ Déclarations publiques }
end;
var
Form1: TForm1;
implementation
uses Unit2, Unit3;
{$R *.dfm}
procedure TForm1.FormCreate(Sender:TObject);
begin
// application.showmainform:=False;
if (screen.Width=800) and (screen.Height=600)
then begin
Form2:=TForm2.create(self);
Form2.ShowModal;
exit;
end;
if (screen.Width=1024) and (screen.Height=768)
then begin
Form3:=TForm3.create(self);
Form3.Show;
exit;
end;
// application.Terminate;
end;
end.
yoghisan
Messages postés204Date d'inscriptionsamedi 10 mai 2003StatutMembreDernière intervention 2 juin 20051 20 févr. 2004 à 10:10
Oups
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs;
type
TForm1 = class(TForm)
procedure FormCreate(Sender:TObject);
private
{ Déclarations privées }
public
{ Déclarations publiques }
end;
var
Form1: TForm1;
implementation
uses Unit2, Unit3;
{$R *.dfm}
procedure TForm1.FormCreate(Sender:TObject);
begin
if (screen.Width=800) and (screen.Height=600)
then begin
Form2:=TForm2.create(self);
Form2.ShowModal;
end;
if (screen.Width=1024) and (screen.Height=768)
then begin
Form3:=TForm3.create(self);
Form3.ShowModal;
end;
end;
end.