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

Turbo Pascal Discussion :

Utilisation de la fonction LineTo


Sujet :

Turbo Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Août 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Août 2011
    Messages : 6
    Par défaut Utilisation de la fonction LineTo
    Salut tout le monde
    Je suis encore débutant sous Turbo Pascal, j'utilise la version 1.5 pour Windows. Je veux créer un programme qui dessine une ligne avec la fonction LineTo mais je n'y arrive pas.
    Mon code source :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    uses winprocs,wintypes;
    begin
    LineTo(0,15,15);
    end.

  2. #2
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    8 049
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 8 049
    Billets dans le blog
    2
    Par défaut
    Bonjour,

    La fonction GDI LineTo nécessite un contexte de périphérique d'affichage (DC). Une solution simple est de créer une application OWL et d'utiliser la méthode tWindow.Paint, qui met à ta disposition le contexte de périphérique d'affichage PaintDC, qu'il n'y a besoin ni de créer ni de détruire :
    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
    Program Ligne;
     
    Uses WinTypes, WinProcs, OWindows;
     
    Type pFenetrePrincipale = ^tFenetrePrincipale;
         tFenetrePrincipale = Object(tWindow)
                                x1, y1, x2, y2 : Integer;   (* Coordonnées de la ligne *)
                                Procedure SetupWindow; virtual;
                                Procedure Paint (PaintDC : hDC; var PaintInfo : tPaintStruct); virtual;
                              end;
     
         tProgramme = Object(tApplication)
                        Procedure InitMainWindow; virtual;
                      end;
     
    Procedure tFenetrePrincipale.SetupWindow;
    (* Initialisation des champs x1, y1; x2 et y2 *)
    Begin
      tWindow.SetupWindow;
      x1 := 10;
      y1 := 20;
      x2 := 200;
      y2 := 160;
    End;
     
    Procedure tFenetrePrincipale.Paint (PaintDC : hDC; var PaintInfo : tPaintStruct);
    (* Dessin de la ligne *)
    Begin
      MoveTo(PaintDC,x1,y1);
      LineTo(PaintDC,x2,y2);
    End;
     
    Procedure tProgramme.InitMainWindow;
    Begin
      MainWindow := New(pFenetrePrincipale,Init(Nil,'Dessin de ligne'));
    End;
     
    Var Programme : tProgramme;
     
    Begin
      Programme.Init('Ligne');
      Programme.Run;
      Programme.Done;
    End.
    Règles du forum
    Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
    Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
    Mes tutoriels et sources Pascal

    Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
    La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]

  3. #3
    Membre du Club
    Homme Profil pro
    Inscrit en
    Août 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Août 2011
    Messages : 6
    Par défaut
    Merci pour votre réponse.
    Pour commencer, c'est très compliqué / fichier non trouvé (Owindows.tpu). J'utilise la version 1.5 pour Windows.
    N'existe-t-il pas une autre methode plus simple, je cherche seulement à apprendre comment tracer des lignes ?

  4. #4
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    8 049
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 8 049
    Billets dans le blog
    2
    Par défaut
    C'est que, justement, Turbo Pascal 1.5 pour Windows est destiné à créer des applications Windows, donc les graphismes passent par les fonctions GDI. C'est très différent du Turbo Pascal classique, par exemple, qui permet d'utiliser l'unité Graph pour dessiner.

    Règles du forum
    Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
    Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
    Mes tutoriels et sources Pascal

    Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
    La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]

  5. #5
    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
    Citation Envoyé par Helmi1993 Voir le message
    Merci pour votre reponse
    pour commencer c est trés compliqué / fichier non trouvé (Owindows.tpu) j utilise la version 1.5 pour windows
    il n existe une autre methode plus simple je cherche seulement à apprendre comment tracer des lignes
    as-tu réellement besoin d'une version 16 bits ?

    Delphi 6 version Perso est disponible sur ce site, avec une aide en ligne correcte et des objets plus haut niveau (TCanvas)
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  6. #6
    Membre du Club
    Homme Profil pro
    Inscrit en
    Août 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Août 2011
    Messages : 6
    Par défaut
    Je cherche à apprendre, y a-t-il des cours, svp ?

  7. #7
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    8 049
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 8 049
    Billets dans le blog
    2
    Règles du forum
    Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
    Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
    Mes tutoriels et sources Pascal

    Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
    La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]

Discussions similaires

  1. [LG]Utilisation de la fonction time
    Par kmitz dans le forum Langage
    Réponses: 4
    Dernier message: 08/04/2005, 13h05
  2. Utilisation de la fonction de déploiement
    Par mchicoix dans le forum XMLRAD
    Réponses: 4
    Dernier message: 01/03/2005, 14h35
  3. [LG]Utilisation de la fonction Random
    Par chloe95 dans le forum Langage
    Réponses: 1
    Dernier message: 01/03/2005, 14h20
  4. Utilisation de la fonction qsort
    Par Jsmeline dans le forum C
    Réponses: 8
    Dernier message: 28/01/2005, 12h40
  5. [LG]librairies : utiliser seulement quelques fonctions
    Par wwwroom dans le forum Langage
    Réponses: 13
    Dernier message: 14/05/2004, 22h50

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