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

Flash Pascal Discussion :

Condition et type énuméré


Sujet :

Flash Pascal

  1. #1
    Membre expérimenté
    Condition et type énuméré
    Je viens de voir un petit bug dans Flashpascal :

    En posant l'ossature d'une unité scrollbar, je me suis aperçu d'un message d'erreur sur une condition avec un type énuméré ... ci-joint

    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
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
     
    unit   UScrollbar;
    {************************************************
     *                                              *
     *            Composant TScrollbar              *
     *                                              *
     ************************************************}
     
    interface
     
    uses Flash8;
     
    type
     
     TKind=(sbHorizontal,sbVertical);
     
    {.......................... TScrollbutton..................................}
     TScrollbutton=class(movieclip)
      constructor Create(parent:movieclip);
      procedure onPress; override;
      procedure onRollOver;override;
      procedure onRollOut;override;
     end;
    {.......................... TCurseur.......................................}
     
     TCurseur=class(movieclip)
      constructor Create(parent:movieclip);
      procedure onPress;override;
      procedure onMouseUp;override;
      procedure onMouseMove;override;
     end;
    {...........................TScrollBar.....................................}
     
     TScrollbar=class(movieclip)
      private
       FLeft,FTop,Fwidth,FHeight:double;
       w,h:double;
       FKind:TKind;
       scroll_but1,scroll_but2:TScrollButton;
       curseur:TCurseur;
       procedure SetLeft(value:double);
       procedure SetTop(value:double);
       procedure SetWidth(value:double);
       procedure SetHeight(value:double);
       procedure SetKind(value:TKind);
      public
       procedure onChange;virtual;
       procedure onMouseWheel(delta: Number;scrolltarget:TObject);
       constructor Create(parent:movieclip);
       property Left:double read FLeft write SetLeft;
       property Top:double read FTop write SetTop;
       property width<img src="images/smilies/icon_biggrin.gif" border="0" alt="" title=":D" class="inlineimg" />ouble read FWidth write SetWidth;
       property height<img src="images/smilies/icon_biggrin.gif" border="0" alt="" title=":D" class="inlineimg" />ouble read Fheight write Setheight;
       property Kind: TKind read FKind write SetKind;//orientation
     end;
     
    {...........................................................................}
    implementation
     
    {.......................... TScrollbutton..................................}
     
    Constructor  TScrollButton.Create(parent:movieclip);
    begin
      inherited Create(parent,'ScrollButton',parent.getNextHighestDepth());
    end;
     
    procedure TScrollbutton.onPress;
    begin
    end;
     
    procedure TScrollbutton.onRollOver;
    begin
    end;
     
    procedure TScrollbutton.onRollOut;
    begin
    end;
     
    {.......................... TCuseur..................................}
     
    constructor TCurseur.Create(parent:movieclip);
    begin
      inherited Create(parent,'Curseur',parent.getNextHighestDepth());
    end;
     
    Procedure TCurseur.onPress;
    begin
    end;
     
    Procedure TCurseur.onMouseUp;
    begin
    end;
     
    Procedure TCurseur.onMouseMove;
    begin
    end;
     
    {.......................... TScrollbar..................................}
     
    Constructor  TScrollBar.Create(parent:movieclip);
    begin
      inherited Create(parent,'ScrollBar'+floattostr(parent.getNextHighestDepth()),parent.getNextHighestDepth());
      beginFill($EFEFEE);
      linestyle(2,$e3e3e2);
      moveto(0,0);
      lineto(20,0);
      lineto(20,500);
      lineto(0,500);
      lineto(0,0);
    end;
     
    procedure TScrollBar.SetLeft(value:double);
    begin
     _x:=value;
     FLeft:=value;
    end;
     
    procedure TScrollBar.SetTop(value:double);
    begin
     _y:=value;
     FTop:=value;
    end;
     
    procedure TScrollBar.SetWidth(value:double);
    begin
     w:=value;
     FWidth:=value;
    end;
     
    procedure TScrollBar.SetHeight(value:double);
    begin
     h:=value;
     FHeight:=value;
    end;
     
    procedure TScrollBar.SetKind(value:TKind);
    begin
     FKind:=value;
     if value = sbVertical then
     begin
      _rotation:=-90;
      _y:=_y+_height;
     end else exit;
     
    end;
     
    Procedure TScrollBar.onChange;
    begin
    end;
     
    procedure TScrollBar.onMouseWheel(delta: Number;scrolltarget:TObject);
    begin
    end;
     
    {..........................Fin TScrollbar..................................}
     
    end.


    Erreur type mismatch dans la procedure setKind...

    C'est pas normal...

  2. #2
    Expert éminent sénior
    En effet

    c'est corrigé dans la nouvelle version en ligne
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  3. #3
    Membre expérimenté
    Citation Envoyé par Paul TOTH Voir le message
    En effet

    c'est corrigé dans la nouvelle version en ligne
    Nickel, à force de le tester et de l'améliorer, tu pourras le commercialiser.

    merci

  4. #4
    Expert éminent sénior
    Citation Envoyé par Archimède Voir le message
    Nickel, à force de le tester et de l'améliorer, tu pourras le commercialiser.

    merci
    pour moi FP2 est un laboratoire, si je sors FP3 pour ActionScript 3 un jour, il sera sans doute payant ... mais pas très cher

    dans les choses que j'aimerai ajouter à FP2 :
    - complétion de code
    - débogueur
    - aide en ligne

    la complétion de code peut se faire avec SynEdit mais d'une façon qui ne me plait pas...j'envisage surtout de remplacer SynEdit avec une fusion entre l'éditeur et le compilateur, notamment pour la partie analyse du code...mais c'est pas pour tout de suite
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  5. #5
    Membre expérimenté
    Citation Envoyé par Paul TOTH Voir le message
    si je sors FP3 pour ActionScript 3 un jour, il sera sans doute payant
    Tu aurais bien raison...

    J'espère que ce un jour se concrétisera...

    la complétion manque en effet, ça donnerait du sens à l'encapsulation et ce serait nettement plus pratique...

  6. #6
    Membre expérimenté
    Problème.. ça ne passe toujours pas :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    procedure TScrollBar.SetKind(value:TKind);
    begin
     FKind:=value;
     if value = 'sbVertical' then...


    ereur type mismatch...

  7. #7
    Expert éminent sénior
    Citation Envoyé par Archimède Voir le message
    Problème.. ça ne passe toujours pas :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    procedure TScrollBar.SetKind(value:TKind);
    begin
     FKind:=value;
     if value = 'sbVertical' then...


    ereur type mismatch...
    pourquoi entre quotes ?!
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  8. #8
    Membre expérimenté
    Citation Envoyé par Paul TOTH Voir le message
    pourquoi entre quotes ?!
    Oui, en effet en attendant pour continuer, je l'avais mis en string...

    Autant pour moi, j'ai oublié de rectifier.
    merci

  9. #9
    Rédacteur/Modérateur

    Bien vu, Anthony, et bravo à Paul pour la correction immédiate.

    Je trouve que c'est une bonne idée de faire une version commerciale de FlashPascal. Y aura-t-il des licences "enseignement" ?

  10. #10
    Expert éminent sénior
    Citation Envoyé par Roland Chastain Voir le message
    Bien vu, Anthony, et bravo à Paul pour la correction immédiate.

    Je trouve que c'est une bonne idée de faire une version commerciale de FlashPascal. Y aura-t-il des licences "enseignement" ?
    ah mais je rappelle qu'il y a une page de don pour FlashPascal Et même un compte BitCoin 1Mskujp34huad4vdmtd7FQry7ewXEGwcAo !

    et même un donateur pas très loin d'ici

    Mais bon, si l'éducation nationale veux m'acheter une brouette de licences je suis d'accord ^^
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store