Première page ...

Paraglider Messages postés 35 Date d'inscription mercredi 19 mars 2003 Statut Membre Dernière intervention 6 février 2014 - 19 févr. 2004 à 21:21
yoghisan Messages postés 204 Date d'inscription samedi 10 mai 2003 Statut Membre Derniè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 ?

Merci de vos réponses

Jacques

3 réponses

Paraglider Messages postés 35 Date d'inscription mercredi 19 mars 2003 Statut Membre Dernière intervention 6 février 2014 1
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 :-)

Merci encore

Jacques
0
yoghisan Messages postés 204 Date d'inscription samedi 10 mai 2003 Statut Membre Dernière intervention 2 juin 2005 1
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.
0
yoghisan Messages postés 204 Date d'inscription samedi 10 mai 2003 Statut Membre Dernière intervention 2 juin 2005 1
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.
0
Rejoignez-nous