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

Outils Delphi Discussion :

[Inno Setup] Bouton 'Next' Enable Property


Sujet :

Outils Delphi

  1. #1
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 49
    Points : 47
    Points
    47
    Par défaut [Inno Setup] Bouton 'Next' Enable Property
    Bonjour,

    J'aurais besoin d'accéder à la propriété 'Enable' du boutton Next...Pour l'instant j'utilise la fonction native
    function NextButtonClick(CurPageID: Integer): Boolean;
    , avec un système de test à l'interieur pour empécher d'avancer d'un pas, mais bon celà aurrait été quand même mieux si le bouton Next put être grisé...

    ce qui semble impossible ? Où bien selon vous ?

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    707
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 707
    Points : 777
    Points
    777
    Par défaut
    NextButton.Enabled := ConditionRemplie;

  3. #3
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 49
    Points : 47
    Points
    47
    Par défaut
    Mais non...NextButton n'est pas reconnu. C'est justement le problème !

  4. #4
    Membre expérimenté
    Avatar de ouiouioui
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2006
    Messages
    984
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2006
    Messages : 984
    Points : 1 418
    Points
    1 418
    Par défaut
    Tu l'utilise ou?
    C'est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    procedure CurPageChanged(CurPageID: Integer);
    begin
      case CurPageID of
        wpWelcome:
          WizardForm.NextButton.Enabled :=false;
      end;
    end;
    Il existe 3 sortes de gens: ceux qui savent compter et ceux qui ne savent pas.

  5. #5
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 49
    Points : 47
    Points
    47
    Par défaut
    merci, celà compile mais n'a aucun effet sur le bouton.

  6. #6
    Membre expérimenté
    Avatar de ouiouioui
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2006
    Messages
    984
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2006
    Messages : 984
    Points : 1 418
    Points
    1 418
    Par défaut
    ah bon, si tu veux peut-être (pas sûr de trouver) une raison montre ton code, tu utilise quel version?

    j'ai la version 5.3.5 et si je crée une nouveau script avec l'assistant et utilise le code le bouton suivant apparait bien désactivé

    script exemple:
    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
    ; Script generated by the Inno Setup Script Wizard.
    ; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
     
    #define MyAppName "My Program"
    #define MyAppVerName "My Program 1.5"
    #define MyAppPublisher "My Company, Inc."
    #define MyAppURL "http://www.example.com/"
    #define MyAppExeName "MyProg.exe"
     
    [Setup]
    ; NOTE: The value of AppId uniquely identifies this application.
    ; Do not use the same AppId value in installers for other applications.
    ; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
    AppId={{88594B8B-0BF3-4C3F-89DE-AA95FF462557}
    AppName={#MyAppName}
    AppVerName={#MyAppVerName}
    AppPublisher={#MyAppPublisher}
    AppPublisherURL={#MyAppURL}
    AppSupportURL={#MyAppURL}
    AppUpdatesURL={#MyAppURL}
    DefaultDirName={pf}\{#MyAppName}
    DefaultGroupName={#MyAppName}
    OutputBaseFilename=setup
    Compression=lzma
    SolidCompression=yes
     
    [Languages]
    Name: "english"; MessagesFile: "compiler:Default.isl"
     
    [Tasks]
    Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
     
    [Files]
    Source: "C:\Program Files\Inno Setup 5\Examples\MyProg.exe"; DestDir: "{app}"; Flags: ignoreversion
    ; NOTE: Don't use "Flags: ignoreversion" on any shared system files
     
    [Icons]
    Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
    Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon
     
    [Run]
    Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#MyAppName}}"; Flags: nowait postinstall skipifsilent
     
    [Code]
    procedure CurPageChanged(CurPageID: Integer);
    begin
      case CurPageID of
        wpWelcome:
          WizardForm.NextButton.Enabled := False;
      end;
    end;
    Il existe 3 sortes de gens: ceux qui savent compter et ceux qui ne savent pas.

  7. #7
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 49
    Points : 47
    Points
    47
    Par défaut
    Bon , en résumé, je dirais que si je pose cette question absurde c'est parce qu' éffectivement il se passe quelquechose de pas normal. Le scripting innosetup n'est pas trop dur...bon hein, pour qui touche au Delphi.

    Peut être que je pourrais préciser que le truc particulier est que le script est basé sur une page customisée ( donc avec Page := CreatecustomPage et tout le code qui suit, ou le 'tralala' si c'est plus clair ).

    Ensuite je ne peux pas fournir le script car le 'client' est vicitme de piratage et que donc je ne tiens pas à encourager la contrafacon du produit.

    La seule chose que je peux fournir c'est cet échantillon, qui concerne exactement la section pour laquelle je pose la question:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Function NextButtonClick(CurPageID: Integer): Boolean;
    Begin
      Result  := True;
      Visible := True;
      If DataDir = 'Not found' Then
        Begin
          Result := False;
          MsgBox('Please define a path before continuing', mbInformation, mb_Ok);
        End;
    End;
    Plutôt que de définir False en result, le client préférerait que le bouton soit grisé. Sauf que celà ne marche pas. et c'est un peux étrange. D'où ma question insistante qui peut paraitre absurde.

    "DataDir = 'Not found'" n'arrive qu'après que l'utilisateur ait eut a faire avec la custom page dont je parlais. C'est pourquoi l'ID de la page n'est jamais tésté.

    Donc voilà...je ne trolle pas, ca ne marche vraiment pas dans mon cas.

  8. #8
    Membre expérimenté
    Avatar de ouiouioui
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2006
    Messages
    984
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2006
    Messages : 984
    Points : 1 418
    Points
    1 418
    Par défaut
    "DataDir = 'Not found'" n'arrive qu'après que l'utilisateur ait eut a faire avec la custom page dont je parlais. C'est pourquoi l'ID de la page n'est jamais tésté.
    ok tu as une page personnalisé c'est sur cette page que tu veux le bouton next grisé? et a l'arrivé dessus ou lors du clique sur next si DataDir = 'Not found'
    parceque a l'arrivé ta le code et lors du clique chez moi sa fonctionne
    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
    ; Script generated by the Inno Setup Script Wizard.
    ; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
     
    #define MyAppName "My Program"
    #define MyAppVerName "My Program 1.5"
    #define MyAppPublisher "My Company, Inc."
    #define MyAppURL "http://www.example.com/"
    #define MyAppExeName "MyProg.exe"
     
    [Setup]
    ; NOTE: The value of AppId uniquely identifies this application.
    ; Do not use the same AppId value in installers for other applications.
    ; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
    AppId={{00D5FD9E-F7AD-4530-8312-5EA8664C0551}
    AppName={#MyAppName}
    AppVerName={#MyAppVerName}
    AppPublisher={#MyAppPublisher}
    AppPublisherURL={#MyAppURL}
    AppSupportURL={#MyAppURL}
    AppUpdatesURL={#MyAppURL}
    DefaultDirName={pf}\{#MyAppName}
    DefaultGroupName={#MyAppName}
    OutputBaseFilename=setup
    Compression=lzma
    SolidCompression=yes
     
    [Languages]
    Name: "english"; MessagesFile: "compiler:Default.isl"
     
    [Tasks]
    Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
     
    [Files]
    Source: "C:\Program Files\Inno Setup 5\Examples\MyProg.exe"; DestDir: "{app}"; Flags: ignoreversion
    ; NOTE: Don't use "Flags: ignoreversion" on any shared system files
     
    [Icons]
    Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
    Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon
     
    [Run]
    Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#MyAppName}}"; Flags: nowait postinstall skipifsilent
     
    [CODE]
    const
     DataDir = 'Not found';
     
    Function NextButtonClick(CurPageID: Integer): Boolean;
    Begin
      Result  := True;
      case CurPageID of
        wpWelcome:
          If DataDir = 'Not found' Then
          Begin
            WizardForm.NextButton.Enabled := False;
            MsgBox('Please define a path before continuing', mbInformation, mb_Ok);
            Result := False;
          End;
      end;
    End;
    j'ai surement rien compris encore
    Il existe 3 sortes de gens: ceux qui savent compter et ceux qui ne savent pas.

  9. #9
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 49
    Points : 47
    Points
    47
    Par défaut
    Non tu as très bien compris, mais ca ne marche pas dans mon script ( après un énième test et suite à votre dernière réponse) , allez savoir pourquoi ?

    Dailleurs à la base mon problème était que je ne savais pas comment accéder au bouton, donc avec 'WizardPage. ' Après la deuxième réponse ca aurait du marcher...

    Mais non. Le bouton Next reste bel et bien toujours actif. éventuellement si je résoud le problème je partagerai la résolution, parce qu'il y a quelque chose d'un peu étrange, je trouve.

    Merci encore pour l'aide fournie.

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

Discussions similaires

  1. [Inno setup] Action sur les boutons
    Par ratapapa dans le forum Outils
    Réponses: 2
    Dernier message: 08/03/2009, 12h52
  2. [Inno Setup] Recherche de tutoriels
    Par argon dans le forum Autres langages
    Réponses: 5
    Dernier message: 30/01/2006, 19h55
  3. Delphi et inno setup
    Par drakes dans le forum Outils
    Réponses: 10
    Dernier message: 17/09/2004, 10h15
  4. [INNO SETUP][ORACLE] Installer le client Oracle avec Inno
    Par AnnSo dans le forum Bases de données
    Réponses: 11
    Dernier message: 19/08/2004, 16h21
  5. Bde Inno Setup et Test
    Par Fxg dans le forum Bases de données
    Réponses: 2
    Dernier message: 20/07/2004, 14h35

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