Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

vb.net 2008 et les index

7 réponses
Avatar
Dan
Bonjour a tous.

En VB 6 je peux utiliser l'instruvtion suivante .
NOIND = DEMARER1(Index).Index

ce qui me permet de recuperer le rang d'une zone indexée.
coment programme t'on cela en vb.net 2008?
D'avance merci de votre aide a

7 réponses

Avatar
Patrice
DEMARRER1 est un objet de quel type ?

Il est sans doute préférable de mettre un peu de côté ou en tout cas de
prendre un peu de distance avec ce que tu connais de VB6 pour passer à
.NET...

--
Patrice


"Dan" a écrit dans le message de groupe de discussion
: 4989f5eb$0$28671$
Bonjour a tous.

En VB 6 je peux utiliser l'instruvtion suivante .
NOIND = DEMARER1(Index).Index

ce qui me permet de recuperer le rang d'une zone indexée.
coment programme t'on cela en vb.net 2008?
D'avance merci de votre aide a





Avatar
Bonjour Dan,

Dim tableau(3, 4) As String

Dim rang As Integer

rang = tableau.Rank 'retourne le rang (nombre de dimentions) : 2


Stéphane

PS : si ce n'est pas ce que tu cherches, essayes d'être plus précis dans ta
demande.


"Dan" a écrit dans le message de news:
4989f5eb$0$28671$
Bonjour a tous.

En VB 6 je peux utiliser l'instruvtion suivante .
NOIND = DEMARER1(Index).Index

ce qui me permet de recuperer le rang d'une zone indexée.
coment programme t'on cela en vb.net 2008?
D'avance merci de votre aide a





Avatar
Dan
Excusez moi j'aqi ete trop rapide
imaginons par ex que j'ai plusieurs textbox.

je ne veux pas etre oblige de les nomer diferement mais de leur donner un
index

donc sous VB6 cela se traduit par
TEXTBOX(index).text = "xxxxxxxxxxx"
precisement j'ai 6 folder cointenant des boutons des label et des boutons
rigoureusement identiques et je veux pouvoir travailler par indexation pour
ne pas avoir a multiplier mes lignes de code.
D'avance merci de votre aide

"Dan" a écrit dans le message de
news:4989f5eb$0$28671$
Bonjour a tous.

En VB 6 je peux utiliser l'instruvtion suivante .
NOIND = DEMARER1(Index).Index

ce qui me permet de recuperer le rang d'une zone indexée.
coment programme t'on cela en vb.net 2008?
D'avance merci de votre aide a





Avatar
Jacquouille14
Dan a écrit :
Excusez moi j'aqi ete trop rapide
imaginons par ex que j'ai plusieurs textbox.

je ne veux pas etre oblige de les nomer diferement mais de leur
donner un index

donc sous VB6 cela se traduit par
TEXTBOX(index).text = "xxxxxxxxxxx"
precisement j'ai 6 folder cointenant des boutons des label et des
boutons rigoureusement identiques et je veux pouvoir travailler par
indexation pour ne pas avoir a multiplier mes lignes de code.
D'avance merci de votre aide

"Dan" a écrit dans le message de
news:4989f5eb$0$28671$
Bonjour a tous.

En VB 6 je peux utiliser l'instruvtion suivante .
NOIND = DEMARER1(Index).Index

ce qui me permet de recuperer le rang d'une zone indexée.
coment programme t'on cela en vb.net 2008?
D'avance merci de votre aide a








Bonjour,
VB 2008 ne permet des index qu'en création dynamique
(par programmation).
Autrement en utilisant if ctype(sender,textbox).name="nom de textbox"
ctype(sender,textbox).text="mon texte"
end if


--
Jacques dit Jacquouille
Avatar
Patrice
Il est possible dans VB.NET d'attacher la même procédure de gestion
d'évènements à plusieurs contrôles : cf la clause Handles
(http://msdn.microsoft.com/fr-fr/library/6k46st1y.aspx) ou l'instruction
AddHandler dans la doc
(http://msdn.microsoft.com/fr-fr/library/7taxzxka.aspx).

Il est possible d'accéder aux contrôles existant via la collection Controls.

Une autre approche est de créer les contrôles dynamiquement soit via un
contrôle (DataReapeater par exemple qui fait d'un partie d'un VB PowerPack)
ou directement en mémorisant les contrôles dans un tableau tout ce qu'il y a
de plus standard (mais on ne les voit pas en mode conception bien sûr). Ce
n'est pas un "control array" à la mode VB6 mais un tableau de contrôle tout
comme on pourrait créer un tableau de n'importe quoi d'autre...

Ou de placer les contrôles existants dans un tableau indépendemment de leur
nom pour poiuvoir y accéder ensuite via un index etc.. etc...

--
Patrice


"Dan" a écrit dans le message de groupe de discussion
: 498ab173$0$28672$
Excusez moi j'aqi ete trop rapide
imaginons par ex que j'ai plusieurs textbox.

je ne veux pas etre oblige de les nomer diferement mais de leur donner
un index

donc sous VB6 cela se traduit par
TEXTBOX(index).text = "xxxxxxxxxxx"
precisement j'ai 6 folder cointenant des boutons des label et des boutons
rigoureusement identiques et je veux pouvoir travailler par indexation
pour ne pas avoir a multiplier mes lignes de code.
D'avance merci de votre aide

"Dan" a écrit dans le message de
news:4989f5eb$0$28671$
Bonjour a tous.

En VB 6 je peux utiliser l'instruvtion suivante .
NOIND = DEMARER1(Index).Index

ce qui me permet de recuperer le rang d'une zone indexée.
coment programme t'on cela en vb.net 2008?
D'avance merci de votre aide a








Avatar
Dan
oui c'est bien cela ,je parviens bien a effectuer une partie du code mais
il me manque qq chose.
Si tu as 5 mn essaie de faire cela
sur form1 tu trace un panel que tu nome frame1 et a l'interieur tu trace
un label. que tu nome label1
Tu copie le le panel et le label et tu le cole dans form1.
tu verifie et tu constate que tu a
_Frame1_0 et _Label1_0
_Frame1_1 et _Label1_1
Maintenant tu peux a chacun des label par ce que je nome son i,dex
voici le code.

Option Strict Off
Option Explicit On
Friend Class Form1
Inherits System.Windows.Forms.Form
Private Sub Form1_Load(ByVal eventSender As System.Object, ByVal eventArgs
As System.EventArgs) Handles MyBase.Load
Label1(1).Text = "text11111111111"
Label1(0).Text = "text0000"
end sub

Maintenant je desire avec MouseMove recuperer le np de l'index que je
survole avec mon curseur en quelque sorte ce n'esdt pas moi qui force la
valeure de l'in dex , 1 ou 0 mais c'est le programme qui me l'indique.
qu'en penses tu et coment t'y prendrai tu?
d'avance merci de ton aide




"Patrice" <http://www.chez.com/scribe/> a écrit dans le message de
news:
Il est possible dans VB.NET d'attacher la même procédure de gestion
d'évènements à plusieurs contrôles : cf la clause Handles
(http://msdn.microsoft.com/fr-fr/library/6k46st1y.aspx) ou l'instruction
AddHandler dans la doc
(http://msdn.microsoft.com/fr-fr/library/7taxzxka.aspx).

Il est possible d'accéder aux contrôles existant via la collection
Controls.

Une autre approche est de créer les contrôles dynamiquement soit via un
contrôle (DataReapeater par exemple qui fait d'un partie d'un VB
PowerPack) ou directement en mémorisant les contrôles dans un tableau tout
ce qu'il y a de plus standard (mais on ne les voit pas en mode conception
bien sûr). Ce n'est pas un "control array" à la mode VB6 mais un tableau
de contrôle tout comme on pourrait créer un tableau de n'importe quoi
d'autre...

Ou de placer les contrôles existants dans un tableau indépendemment de
leur nom pour poiuvoir y accéder ensuite via un index etc.. etc...

--
Patrice


"Dan" a écrit dans le message de groupe de
discussion : 498ab173$0$28672$
Excusez moi j'aqi ete trop rapide
imaginons par ex que j'ai plusieurs textbox.

je ne veux pas etre oblige de les nomer diferement mais de leur donner
un index

donc sous VB6 cela se traduit par
TEXTBOX(index).text = "xxxxxxxxxxx"
precisement j'ai 6 folder cointenant des boutons des label et des boutons
rigoureusement identiques et je veux pouvoir travailler par indexation
pour ne pas avoir a multiplier mes lignes de code.
D'avance merci de votre aide

"Dan" a écrit dans le message de
news:4989f5eb$0$28671$
Bonjour a tous.

En VB 6 je peux utiliser l'instruvtion suivante .
NOIND = DEMARER1(Index).Index

ce qui me permet de recuperer le rang d'une zone indexée.
coment programme t'on cela en vb.net 2008?
D'avance merci de votre aide a











Avatar
Patrice
Voir Array.IndexOf...

Cela pourrait donner quelque chose comme deux labels sur la form puis :

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
MyLabels(0) = UnLabel
MyLabels(1) = AutreNom
For i As Integer = 0 To UBound(MyLabels)
AddHandler MyLabels(i).MouseMove, AddressOf MyHandler
Next
End Sub

Pour initialiser un tableau et ajouter le gestionnaire d'évènement. Celui
peut être qq chose comme :

Private Sub MyHandler(ByVal sender As Object, ByVal e As MouseEventArgs)
Dim MyLabel As Label = DirectCast(sender, Label)
MsgBox(Array.IndexOf(MyLabels, sender))
End Sub

L'argument sender permet de récupérer l'objet qui est à la source de
l'évènement ce qui est peut-être suffisant ? Si tu as vraiment besoin de
savoir quel est l'index dans le tableau, la Méthode Array.IndexOf permet de
récupérer l'index...

Anoter que le tableau ne sert strictement à rien si tu n'as pas besoin de
garder une liste de contrôles auquel tu veux souvent faire subir un même
traitement...

--
Patrice


"Dan" a écrit dans le message de groupe de discussion
: 498af35d$0$28671$
oui c'est bien cela ,je parviens bien a effectuer une partie du code mais
il me manque qq chose.
Si tu as 5 mn essaie de faire cela
sur form1 tu trace un panel que tu nome frame1 et a l'interieur tu
trace un label. que tu nome label1
Tu copie le le panel et le label et tu le cole dans form1.
tu verifie et tu constate que tu a
_Frame1_0 et _Label1_0
_Frame1_1 et _Label1_1
Maintenant tu peux a chacun des label par ce que je nome son i,dex
voici le code.

Option Strict Off
Option Explicit On
Friend Class Form1
Inherits System.Windows.Forms.Form
Private Sub Form1_Load(ByVal eventSender As System.Object, ByVal eventArgs
As System.EventArgs) Handles MyBase.Load
Label1(1).Text = "text11111111111"
Label1(0).Text = "text0000"
end sub

Maintenant je desire avec MouseMove recuperer le np de l'index que je
survole avec mon curseur en quelque sorte ce n'esdt pas moi qui force la
valeure de l'in dex , 1 ou 0 mais c'est le programme qui me l'indique.
qu'en penses tu et coment t'y prendrai tu?
d'avance merci de ton aide




"Patrice" <http://www.chez.com/scribe/> a écrit dans le message de
news:
Il est possible dans VB.NET d'attacher la même procédure de gestion
d'évènements à plusieurs contrôles : cf la clause Handles
(http://msdn.microsoft.com/fr-fr/library/6k46st1y.aspx) ou l'instruction
AddHandler dans la doc
(http://msdn.microsoft.com/fr-fr/library/7taxzxka.aspx).

Il est possible d'accéder aux contrôles existant via la collection
Controls.

Une autre approche est de créer les contrôles dynamiquement soit via un
contrôle (DataReapeater par exemple qui fait d'un partie d'un VB
PowerPack) ou directement en mémorisant les contrôles dans un tableau
tout ce qu'il y a de plus standard (mais on ne les voit pas en mode
conception bien sûr). Ce n'est pas un "control array" à la mode VB6 mais
un tableau de contrôle tout comme on pourrait créer un tableau de
n'importe quoi d'autre...

Ou de placer les contrôles existants dans un tableau indépendemment de
leur nom pour poiuvoir y accéder ensuite via un index etc.. etc...

--
Patrice


"Dan" a écrit dans le message de groupe de
discussion : 498ab173$0$28672$
Excusez moi j'aqi ete trop rapide
imaginons par ex que j'ai plusieurs textbox.

je ne veux pas etre oblige de les nomer diferement mais de leur
donner un index

donc sous VB6 cela se traduit par
TEXTBOX(index).text = "xxxxxxxxxxx"
precisement j'ai 6 folder cointenant des boutons des label et des
boutons rigoureusement identiques et je veux pouvoir travailler par
indexation pour ne pas avoir a multiplier mes lignes de code.
D'avance merci de votre aide

"Dan" a écrit dans le message de
news:4989f5eb$0$28671$
Bonjour a tous.

En VB 6 je peux utiliser l'instruvtion suivante .
NOIND = DEMARER1(Index).Index

ce qui me permet de recuperer le rang d'une zone indexée.
coment programme t'on cela en vb.net 2008?
D'avance merci de votre aide a