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 :

Problème de bouton


Sujet :

Delphi

  1. #1
    Membre éprouvé
    Avatar de neuneu1
    Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Avril 2007
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 874
    Points : 1 194
    Points
    1 194
    Par défaut Problème de bouton
    Bonjour,
    Mon probleme est simple enfin je pense.

    je me sers de tms planner pour des test.

    j'ai reussi a insere des donner via une table, en me servant de la methode insert du tplanner.

    je l'ai appliquer a un boutton de delphi.
    celui-ci n'ayant pas tout les paramettre de la procedure j'ai copier ceux ci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    avant
    procedure TForm1.Button4Click(Sender: TObject);
    apres
    procedure TForm1.Button4Click(Sender: TObject; Position, FromSel,
      FromSelPrecise, ToSel, ToSelPrecise: Integer);
    le probleme c'est qu a chaque enregistrement ou compile delphi me demande si je veux l enlever, je repond non , bon ca marche mais c'est lourd a la fin..
    Comment faire pour que ca ne ce passe pas comme ca

    merci
    a+
    Une porte peut -etre ouverte ou....rouge!!!!:mouarf

  2. #2
    Expert éminent sénior

    Avatar de sjrd
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Juin 2004
    Messages
    4 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Suisse

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2004
    Messages : 4 517
    Points : 10 154
    Points
    10 154
    Par défaut
    Tu ne peux pas ajouter des paramètres à tes événements comme ça te chante ! Si ça marche, c'est purement un coup de chance. Je suis d'ailleurs très étonné que tu n'aies pas déjà eu droit à des résultats incohérents !

    Pourquoi veux-tu ajouter des paramètres à ton ButtonClick ? Comment veux-tu que ces paramètres soient renseignés ?
    sjrd, ancien rédacteur/modérateur Delphi.
    Auteur de Scala.js, le compilateur de Scala vers JavaScript, et directeur technique du Scala Center à l'EPFL.
    Découvrez Mes tutoriels.

  3. #3
    Membre éprouvé
    Avatar de neuneu1
    Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Avril 2007
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 874
    Points : 1 194
    Points
    1 194
    Par défaut
    J'ai toujours beaucoup de chance

    Non ,blague a part, c'est assez simple , la procerdure originale est la suivante
    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
     
     
    procedure TForm1.Planner1ItemInsert(Sender: TObject; Position, FromSel,
      FromSelPrecise, ToSel, ToSelPrecise: Integer);
    begin
      Planner1.Items.Selected:=nil;
     
     
      if planner1.Items.HasItem(fromSel,toSel,Position) then
      begin
        ShowMessage('Cannot create item.'#13#10'Selected period already contains an item without overlap !');
        Exit;
      end;
           Planner1.Items.BeginUpdate;
      with (Planner1.Items.Add) do
      begin
        Text.Add('This item is created at');
        Text.Add('run-time in the planner');
        Text.Add('at '+timetostr(now));
        Name := 'Test';
        ItemPos := Position;
        ItemEnd := ToSel;
        ItemBegin := FromSel;
     
          end;
           Planner1.Items.EndUpdate;
    moi j'ai juste voulu faire un test avec onclick pour gere les erreur plus facilement, (pour moi)., et voir comment ca marche..

    donc j'ai place le code de insert dans le button 4.

    J'ai eu des msg erreur , car il manquait des paramettre, logique, donc j'ai fais un copier coller de la procedure insert dans le boutton 4(le sender object, etc..

    Il y peut etre moyen de faire autrement je n ai pas encore trouve.

    voila

    a+
    et merci pour vos reponse
    Une porte peut -etre ouverte ou....rouge!!!!:mouarf

  4. #4
    Membre chevronné
    Avatar de Clorish
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 474
    Points : 2 158
    Points
    2 158
    Par défaut
    tu confond plusieurs choses :
    La fonction TForm1.Planner1ItemInsert est un gestionnaire d'evenement, c'est a dire qu'il est executé quand le planner execute une insertion.
    De meme TForm1.Button1Click est un gestionnaire appelé quand le pouton est clické.
    Donc si tu veux "executer" le code de planner1ItemInsert, soit tu l'appele directement comme une simple fonction en lui passant les parametres a tester (pas tres propre) soit en inserant un element (fonction Insert du Planner ?!?)

    [Edit] Je te conseille d'aller faire un tour du cote de la creation d'evenements pour mieux comprendre comment un evenement marche ....
    On passe du temps a vous repondre, alors soyez sympas, passez du temps ..... a vous relire !
    --
    Pourquoi tant de haine pour cette pauvre aide Delphi ????
    Aiiimezzz laaaaa .... Si-Non-Cham-Pi-Gnon !!!
    --
    Pour plus de Renseignements : Venez me rejoindre sur Msn .... Promis je mords pas

  5. #5
    Membre éprouvé
    Avatar de neuneu1
    Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Avril 2007
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 874
    Points : 1 194
    Points
    1 194
    Par défaut
    Merci pour les reponse
    Comme je suis debutnt, je fais des chose pas correct,
    appeler la fonction je sais pas si je saurai, j'ai fait l essaie avec la fonction insert dans l evenemnt insert, j'ai juste essaye de la mettre sur le boutton pour test le fonctionnement , c'est comme ca que j'ai trouve les paramettre a passer..

    je crois qu il est possible de simuler un evenemt , je l'ai fais sur un onclick mais j'ai oblie depuis, est ce faissable sur un insert, c'est par curiosite car c'est ok pour moi , ca marche le petit programme, ca marche un grand mot, disons que pour le moment j'arrive a faire ce que je souhaite..

    merci
    a+
    Une porte peut -etre ouverte ou....rouge!!!!:mouarf

  6. #6
    Membre éprouvé
    Avatar de neuneu1
    Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Avril 2007
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 874
    Points : 1 194
    Points
    1 194
    Par défaut
    Bon , vous aviez raison , cest normale quand meme un peu

    Mon system marchait avec de la chance ....
    Parce que lorsque j'essaye avec une nouvelle fiche ca plante..

    je m'explique, l evenement oniteminsert c'est bon , mais quand je veux recuperer la valeur de ma 2 eme fiche , ben c'est mort.
    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
     
    procedure TForm1.Planner1ItemInsert(Sender: TObject; Position, FromSel,
      FromSelPrecise, ToSel, ToSelPrecise: Integer);
     
    begin
     
    Planner1.Items.Selected:=nil;
     
     
      if planner1.Items.HasItem(fromSel,toSel,Position) then
      begin
        ShowMessage('Cannot create item.'#13#10'Selected period already contains an item without overlap !');
        Exit;
      end;
      form2.Show;
          { Planner1.Items.BeginUpdate;
     
      with (Planner1.Items.Add) do
      begin
     
        Text.Add(form2.Edit1.Text);  //affiche la valeur de l'edit dans l items cree
     
        Name := 'Test';
        ItemPos := Position;
        ItemEnd := ToSel;
        ItemBegin := FromSel;
        edit1.Text:=  inttostr( ItemPos) ;
        edit2.Text:= inttostr(  ItemEnd);
        edit3.Text:= inttostr( ItemBegin);
         edit5.Text:=planner1.Items.Items[i].GetCaptionString ;   //recupre valeur d u texte
         CaptionType := ctTime;
     
          end;
    //Planner1.Items.EndUpdate;
    Ca ! c est ce qui permet de cree un evenemnt sur le planning.

    Moi, sur l'insert j'ai voulu ouvrir la form2, pour remplir son edit1.txt,jusque la ca va..
    Puis sur le boutton de la form2 je fait un form1.Planner1.Items.EndUpdate, le probleme c'est que la valeur a deja ete recuperer.

    C'est assez logique vu que c 'est dans le "with (Planner1.Items.Add) do"

    Donc je me retrouve dans ,je pense, l obligation de faire le code de l insertinem dans ma form2, et la ben je seche..

    Clorish m as bien parle de fonction , mais je vois pas comment faire, puisque la procedure existe deja..

    Pas facile tout ca!!!

    j'espere avoir ete assez clair, desole si je me trompe entre les procedure , methode ou autre

    a+
    Une porte peut -etre ouverte ou....rouge!!!!:mouarf

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

Discussions similaires

  1. [Debutant] Problème de boutons
    Par Welldone dans le forum Débuter
    Réponses: 5
    Dernier message: 08/07/2005, 15h37
  2. [C#] problème de bouton transparent
    Par mbibim63 dans le forum Windows Forms
    Réponses: 4
    Dernier message: 17/05/2005, 14h50
  3. Réponses: 24
    Dernier message: 11/01/2005, 10h12
  4. [FLASH MX]Problème de bouton et de _level
    Par Geilgestorm dans le forum Flash
    Réponses: 9
    Dernier message: 01/07/2004, 16h37
  5. Problème de boutons radio
    Par BRAUKRIS dans le forum Composants
    Réponses: 3
    Dernier message: 03/06/2004, 02h41

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