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 :

Savoir si un OleVariant est unassigned


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 422
    Par défaut Savoir si un OleVariant est unassigned
    Bonjour,

    J'ai un petit problème : j'ai créé un Array of Array of OleVariant, et à un moment donné je dois agrandir certains Array (de la 2e dimension). Ensuite, je parcours mon tableau pour chercher les cases vides afin de les remplir.

    Durant le débuggage, si je passe la souris sur ma variable du tableau, je peux voir ces cases vides qui sont des "unassigned".

    J'aimerais donc faire qqch dans le genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if tab[i][j] is unassigned then ...
    Mais je ne suis pas parvenu à trouver la manière de faire ce test. Qqn peut-il m'aider ?

  2. #2
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 491
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 491
    Par défaut
    salut

    oleCheck devrais te permettre de verifier si ta variable est assigne

    @+ Phil

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    624
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 624
    Par défaut
    Suite à ce message, je suis dans le même cas, voici mon code :
    Mais hélas celui-ci me dit : indice hors limite :'(

    un peu d'aide serait la bienvenue !
    Amitiés,
    Bruno

    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
    procedure TMain.WebBrowser1BeforeNavigate2(ASender: TObject;
      const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
      Headers: OleVariant; var Cancel: WordBool);
    Var
       Tab : Array of Array of OleVariant;
       i, j : integer;
    begin
      Tab:=PostData;
      For i:=0 to Length(Tab)-1 do
        for j:=0 to Length(Tab[i])-1 do
        Begin
            showmessage(Tab[i][j]);
     
        End;
    end;

  4. #4
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 422
    Par défaut
    Merci pour ton aide. J'avoue que ça n'a pas marché avec le OleCheck ("not applicable to this variant type"), mais j'ai réussi à modifier un peu mon appli pour avoir un tableau de double que j'arrive à traiter. Mon problème a donc disparu. Merci quand même.

  5. #5
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 491
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 491
    Par défaut
    salut

    pour te deplacer dans le tableau utilise
    les methode low et high afin de ne j'amais depasé les borne de tes array

    @+ Phil

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    624
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 624
    Par défaut
    Salut,

    j'ai essayé :

    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
    procedure TMain.WebBrowser1BeforeNavigate2(ASender: TObject;
      const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
      Headers: OleVariant; var Cancel: WordBool);
    Var
       Tab : Array of Array of OleVariant;
       i, j : integer;
    begin
      Tab:=PostData;
      For i:=Low(Tab) to High(Tab)-1 do
        for j:=Low(Tab[i]) to high(Tab[i])-1 do
        Begin
            showmessage(Tab[i][j]);
     
        End;
    end;
    mais hélas là aussi ça plante, indice hors limite

    tu n'aurais la solution ?

    merci bcp
    Bruno

  7. #7
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 491
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 491
    Par défaut
    salut
    ah j'avait pas regardé ton code

    essai plutot un truc du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    procedure TMain.WebBrowser1BeforeNavigate2(ASender: TObject;
      const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
      Headers: OleVariant; var Cancel: WordBool);
    Var
       Tab : string;
    begin
      Tab:=PostData;
      showmessage(Tab);
    end;

    @+ Phil

Discussions similaires

  1. [Requete] Savoir si un champ est remplit
    Par slowpoke dans le forum Requêtes
    Réponses: 8
    Dernier message: 13/08/2003, 11h12
  2. Comment savoir qu'une fonction est standard ?
    Par D[r]eadLock dans le forum C
    Réponses: 5
    Dernier message: 24/03/2003, 14h42
  3. [VB6] [Impression] Savoir si une imprimante est installée
    Par Norm59ttp dans le forum Installation, Déploiement et Sécurité
    Réponses: 2
    Dernier message: 19/12/2002, 09h29
  4. Réponses: 4
    Dernier message: 30/06/2002, 20h23
  5. savoir si 1 point est a l'intérieur d'un cercle ...
    Par skarladevobsy dans le forum Algorithmes et structures de données
    Réponses: 15
    Dernier message: 23/05/2002, 18h14

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