Précédent   Forum des professionnels en informatique > Environnements de développement > Delphi > Langage
Langage Tout ce qui concerne le langage (POO, syntaxe, message d'erreur...)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 09/02/2012, 18h46   #1
Membre habitué
 
Inscription : juillet 2003
Messages : 672
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 672
Points : 142
Points : 142
Par défaut Autre problème curieux impossible à maitriser

Bonjour

Sur une form j'ai un updown que je n'ai volontairement pas associé. Sur le onclick de ce updown j'affiche un showmessage. Aucune autre action ! à la fermeture de la form le showmessage s'affiche impossible de la fermer !

Code :
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
unit Unit9;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls;
 
type
  TForm9 = class(TForm)
    UpDown1: TUpDown;
    procedure UpDown1Click(Sender: TObject; Button: TUDBtnType);
  private
    { Déclarations privées }
  public
    { Déclarations publiques }
  end;
 
var
  Form9: TForm9;
 
implementation
 
{$R *.dfm}
 
procedure TForm9.UpDown1Click(Sender: TObject; Button: TUDBtnType);
begin
   ShowMessage('Blabla');
end;
 
end.
Essayez vous verrez !
colorid est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2012, 19h55   #2
Membre chevronné
 
Inscription : mars 2006
Messages : 615
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 615
Points : 682
Points : 682
Effectivement je constate le problème. Mais ce composant est fait pour être associé à un autre composant comme un TEdit ( propriété associate) je ne comprend donc pas l'usage du ShowMessage.
ALWEBER est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2012, 23h33   #3
Membre habitué
 
Inscription : juillet 2003
Messages : 672
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 672
Points : 142
Points : 142
J'ai retiré l'association parce que je pensais qu'elle était à l'origine du problème.
C'est à dire qu'avec ou sans association le résultat est le même.
Le showMessage est utilisé ici comme il l'est pour n'importe quel composant pour avertir de l'incidence d'une action sur le composant
colorid est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/02/2012, 14h47   #4
Modérateur
 
Avatar de tourlourou
 
Homme Yves Lemaire
Progr(amateur)
Inscription : mars 2005
Messages : 1 163
Détails du profil
Informations personnelles :
Nom : Homme Yves Lemaire
Âge : 49
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Progr(amateur)

Informations forums :
Inscription : mars 2005
Messages : 1 163
Points : 1 587
Points : 1 587
idem ? avec :
Code :
1
2
3
4
5
procedure TForm9.UpDown1Click(Sender: TObject; Button: TUDBtnType);
begin
  inherited;
   ShowMessage('Blabla');
end;
__________________
Delphi 5 Pro / Win 98 PE - Lazarus 0.9.30 / FPC 2.4.2 / Win 7 - Lazarus 0.9.28 / Ubuntu 11.04
tourlourou est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/02/2012, 17h57   #5
Membre habitué
 
Inscription : juillet 2003
Messages : 672
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 672
Points : 142
Points : 142
Par défaut Ca ne change rien

Qui trouvera comment remédier à ce curieux comportement qui n'est pas loin d'un bug Delphi !
N'est-ce pas Embarcadero ?
colorid est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/02/2012, 19h37   #6
Nouveau Membre du Club
 
Homme
Rédacteur technique (retraité)
Inscription : octobre 2009
Messages : 18
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 69
Localisation : France

Informations professionnelles :
Activité : Rédacteur technique (retraité)

Informations forums :
Inscription : octobre 2009
Messages : 18
Points : 38
Points : 38
Idem avec Delphi 4

Idem avec Application.MessageBox

Si on clique n'importe où dans la fenetre, on peut observer qu'un des boutons du controle UpDown s'enfonce et l'événement est redéclenché.

Si on clique plus bas que le controle, c'est le bouton bas qui s'enfonce.

Très bizare!!
DomDA91 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/02/2012, 20h23   #7
Modérateur
 
Avatar de tourlourou
 
Homme Yves Lemaire
Progr(amateur)
Inscription : mars 2005
Messages : 1 163
Détails du profil
Informations personnelles :
Nom : Homme Yves Lemaire
Âge : 49
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Progr(amateur)

Informations forums :
Inscription : mars 2005
Messages : 1 163
Points : 1 587
Points : 1 587
en attendant, un patch pourrait consister à positionner dans le OnCloseQuery un flag à tester dans le TUppDown.Click, ou à y interdire son déclenchement en faisant pointer ce OnClick sur nil
__________________
Delphi 5 Pro / Win 98 PE - Lazarus 0.9.30 / FPC 2.4.2 / Win 7 - Lazarus 0.9.28 / Ubuntu 11.04
tourlourou est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h42.


 
 
 
 
Partenaires

Hébergement Web