IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 Delphi Discussion :

Delphi sans RAD


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 21
    Par défaut Delphi sans RAD
    Bonjour tout le monde les gens,

    J'aimerais savoir comment faire pour créer une fenêtre avec un bouton et un label, sans utiliser l'outil RAD.
    Un peu comme en C++ avec les librairies SFML,wxWidget, Fltk, etc...
    Je rassure le but étant purement pédagogique..J'ai essayé ce code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    program FenSimple;
    uses
      Windows, Messages, SysUtils, Variants, Classes,StdCtrls, Graphics, Controls, Forms,
      Dialogs;
     
    //{$R *.res} *)
     
    type
      TForm1 = class(TForm)
      end;
    var
      Form1: TForm;
     
    //implementation
     
    //{$R *.dfm}
     
    begin
    Form1:=TForm.create(Application);
       with Form1 do
         Begin
         BorderStyle:= bsNone;
         Left:= 388;
         Top:= 200;
         width:=352;
         height:=258;
         caption:='Ma Fenetre';
         //Execute;
         //Free;
         //ShowMessage('Hello There!');
         end;
     
      //Application.Initialize;
      Application.CreateForm(TForm, Form1);//, Form1
      Application.Run;
    end.
    Pas de problème à la compilation et le programme se lance. Sauf que les valeurs des propriétés n'étant absolument pas pris en considération, c'est une fenêtre ,par défault, qui s'affiche.

    Une idée? un site? Merci d'avance.

  2. #2
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 089
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 089
    Par défaut
    Tu vas créer DEUX fenêtres !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Form1:=TForm.create(Application);
    et là
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.CreateForm(TForm, Form1);
    et tu as créer TForm1 que tu n'utilises pas !


    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  3. #3
    Membre chevronné
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    707
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 707
    Par défaut
    Il y a une propriété "Position" qui est par défaut sur poDesigned... or comme tu ne passes pas par l'EDI pour concevoir ta fenêtre, il faut peut-être renseigner cette propriété avec la bonne valeur pour afficher selon tes coordonnées !?

  4. #4
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 089
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 089
    Par défaut
    @GoustiFruit, non, pour faire souvent des fenêtres construite à la main, cette propriété n'influe pas !

    poDesigned est la valeur par défaut par ce qu'une instance est initialisé à zéro à sa création ...

    Son Problème, c'est qu'il créé une Form invisible qu'il modifie (manque Show) et créé un seconde Form non modifié qu'il est s'affiche !
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  5. #5
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 21
    Par défaut
    Merci de vos explications les amis mais le code précédent c'était du brut de décoffrage à taton, etc....D'onc bien sure beaucoup de n'importe quoi. Comme je ne suis pas un maitre Delphi et que je n'ai pas de référence, j'ai donc jeté sur le papier....!! sur la toile...!non dans un fichier serais plus approprié, une ossature tel que j'ai pu le comprendre avec TP7.
    J'avance tout doucement et ce code fonctionne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    program FenSimple;
     
    uses
      Windows, Messages, SysUtils, Variants, Classes,StdCtrls, Graphics, Controls, Forms,
      Dialogs;
      (*Unit1 in 'Unit1.pas' {Form1};
     
    //{$R *.res} *)
     
    //uses Forms, Dialogs, SysUtils;
     (* type
      TForm1 = class(TForm)
      //HelloButton : TButton;
      //procedure MyEventHandler(Sender: TObject);
       end; *)
     
     
     
    var
      Form1: TForm;
     
    //implementation
     
    //{$R *.dfm}
     
     
    (*procedure TForm1.MyEventHandler(Sender: TObject);
    begin
       ShowMessage('Hello There!');
    end; *)
     
    procedure creFen;
    begin
    //Form1:=TForm.create(Application); placé ici,c'est la fiche par défault qui est créée
       with Form1 do
         Begin
         //BorderStyle:= bsNone;
         color:=clYellow;
         Left:= 388;
         Top:= 200;
         width:=352;
         height:=258;
         caption:='Ma Fenetre';
         //Execute;
         //Free;
         //ShowMessage('Hello There!');
         //Form1:=TForm.create(Application);Placé ici,çà ne change rien la fiche se crée
         end;
    end;
     
    (*procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    begin
     
    end;*)
     
    begin
      //Application.Initialize;
      Application.CreateForm(TForm, Form1);//, Form1
      creFen;
      Application.Run;
     
    end.
    Je finirais bien par lui mettre un bouton sur la tronche un de ces quatres.....
    Avec un p'tit coup de main...... car je n'arrive pas à comprendre pourquoi, alors que le compilateur ne m'a pas jeté, le programme bug lorsque je dérive la class TFORM avec TForm1.

  6. #6
    Expert éminent
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Par défaut
    utiliser la VCL à la main ne présente pas bcp d'intéret.

    pour ce qui est des autres bibliothèque il faut se tourner vers leur API et éventuellement leur portage Pascal...comme pour GTK par exemple
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Delphi XE2 sans RAD Studio
    Par Roland Chastain dans le forum EDI
    Réponses: 6
    Dernier message: 23/10/2012, 19h16
  2. Php + delphi sans Apache
    Par dd16 dans le forum Delphi
    Réponses: 9
    Dernier message: 15/09/2006, 11h51
  3. Base de donnée en Delphi sans leBDE
    Par ethan_decoster dans le forum Bases de données
    Réponses: 3
    Dernier message: 31/01/2006, 20h35
  4. ouverture de fichiers word dans delphi (sans utiliser word)
    Par poussinphp dans le forum API, COM et SDKs
    Réponses: 2
    Dernier message: 11/07/2005, 14h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo