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

Lazarus Pascal Discussion :

Comment faire fonctionner une deuxième form indépendamment


Sujet :

Lazarus Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Novembre 2006
    Messages
    321
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 321
    Par défaut Comment faire fonctionner une deuxième form indépendamment
    Bonjour à tous,
    Voici mon problème, a un certain moment de mon application je fais afficher une autre form de cette manière,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    Form1 ;
    …
    …
    …..
    Form2Progress.Show; -> // J’ai un progressbar et un timer sur cette form
     
    Procedure Boucle_RPL;  // cette boucle dure environ 2 minutes
     
    Form2Progress.Close;   // on arrete le timer et on ferme…
    ...
    ...

    Sur la Form2Progress j’ai mis un TprogressBar avec un timer, ce progressbar tourne du min au max permanent sans fin… quand la procedure Boucle_RPL est fini la Form2Progress.Close devient active qui fais arrêter le timer et ferme l’affichage.

    Le problème est que, en entrant dans la Boucle_RPL l’affichage de la Form2Progress ne ce fait plus tout est bloquer..donc je pense qu’il faut faire fonctionner Form2Progress indépendamment.

    Merci beaucoup pour une solution, salutations

  2. #2
    Membre chevronné
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2010
    Messages : 235
    Par défaut
    A priori tu as 2 solutions.

    1ere solution (la plus simple) : Dans ta boucle tu insères de appels à Application.ProcessMessages comme ça ton interface graphique reste active. L'inconvénient c'est que le code de ta boucle n'est plus indépendant de l'interface.

    2eme solution : Tu exécutes ta boucle dans un thread.

    Dans le dossier 'examples/multithreading' de ton installation lazarus tu trouveras le projet singlethreadingexample1 qui correspond à la première solution et le projet multithreadingexample1 qui correspond à la 2eme.

Discussions similaires

  1. Comment faire fonctionner une requête avec NOT EXISTS
    Par arnaudperfect dans le forum Requêtes
    Réponses: 2
    Dernier message: 13/11/2007, 10h39
  2. Réponses: 1
    Dernier message: 23/07/2007, 10h47
  3. Comment faire fonctionner une GUI form?
    Par DragonLebna dans le forum Interfaces Graphiques en Java
    Réponses: 4
    Dernier message: 22/04/2007, 13h58
  4. Comment faire fonctionner une fenêtre Login
    Par Cazaux-Moutou-Philippe dans le forum WinDev
    Réponses: 3
    Dernier message: 29/10/2006, 12h00
  5. Comment faire fonctionner une scroll bar ???
    Par toto4650 dans le forum MFC
    Réponses: 10
    Dernier message: 18/07/2005, 16h47

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