Aller au contenu

RadioButton et attributs


Messages recommandés

Posté(e)

Bonsoir à tous,

 

Je cale sur cette méthode :

 

J'ai un bloc dans mon Dwg avec un attribut, j'ai aussi une form dans laquelle j'ai regroupé plusieurs RadioButton (Option) et un bouton Command. J'aimerai choisir un des RadioButton et en fonction du choix, la valeur de l'attribut serai modifiée, puis quand je clique sur le Command il m'insère le bloc contenant l'attribut modifié.

 

J'ai cherché avec Has_attributes, AcadBlockreference... n'arrive pas...

 

Si qq'un connait la syntaxe à mettre dans le bouton Option... Et aussi dans le bouton de commande qui insère le bloc ! SVP

 

Merci d'avance !

"La ligne droite est le plus court chemin entre deux points, à condition que les deux points soient bien en face l'un de l'autre" P. Desproges.

Posté(e)

C'est pas sur le bouton qu'il faut mettre le code.

Tu as 2 boutons radio et un OK

 

 Private Sub Button1_Click() End Sub

 Private Sub Button2_Click() End Sub

 

Un bouton est 0 ou 1

 

Private Sub BoutonOK 
................................
If Button1 = False Then
.....................
Else
.......................
End If
End Sub

 

Pour le bloc existant dans le fichier en cour :

 
Dim insertionPnt(0 To 2) As Double
Dim MonBlock As AcadBlockReference
insertionPnt(0) = 0: insertionPnt(1) = 0: insertionPnt(2) = 0
Set MonBlock = ThisDrawing.ModelSpace.InsertBlock(insertionPnt, 1, 1, 1, 0) 

(Si tu veux cliquer à l'écran pour le point, passe par GetPoint.)

 

Pour l'attribut:

 MonBlock.GetAttributes(0).TextString="MaValeur1"

Nous n’ héritons pas de la terre de nos ancêtres.Nous l’empruntons à nos enfants.

Posté(e)

Yes merci je commence à comprendre !

 

Dans cette optique je vais essayer comme cela.

 

Je mon la barre d'un cran, dans mon cas réel, j'ai 3 radioBouton groupés dans un cadre, puis 4 autres dans un autre cadre j'aurai donc dans le bouton commande autant de lignes :

 

 

If Button1 = False Then
.....................

 

que de bouton Radio dans ma form ?

 

Et le fait que l'on marque "End sub" dans un bouton radio ne gènera t-il pas le fait qu'il y en ait d'autre dans un autre cadre ?

 

Autre question qui n'a rien à voir : Peut-on transformer une variable string en integer de la forme suivante :

 

 
Dim Itoto as integer
Dim Stata as string
Itoto = val(Stata)

 

Faut-il que Stata ne comporte aucun caractère alphabétique ?

 

Merci à toi !

 

[Edité le 20/9/2006 par phil_vsd]

"La ligne droite est le plus court chemin entre deux points, à condition que les deux points soient bien en face l'un de l'autre" P. Desproges.

Posté(e)

Re-Winfiel !

 

C'est encore moi,

 

Tu m'as expliqué que dans le code OK on renseigne l'attribut comme cela :

 

 MonBlock.GetAttributes(0).TextString="MaValeur1"

 

Si j'en ai plusieurs cela ressemblera sans doute à cela :

 

 
MonBlock.GetAttributes(0).TextString="MaValeur1"
MonBlock.GetAttributes(1).TextString="MaValeur2"
MonBlock.GetAttributes(2).TextString="MaValeur3"

 

Est-ce que l'ordre de sélection des attributs quand je créé mon Bloc doit respecter celui plus haut ? Je pense que oui sinon les valeurs vont se répandre dans le mauvais ordre ?

 

Merci !

"La ligne droite est le plus court chemin entre deux points, à condition que les deux points soient bien en face l'un de l'autre" P. Desproges.

Posté(e)

Salut,

on comence tj par

Sub Toto
.............
'Code
............
End sub

Ici le fait de commencer par "Sub" revient à dire "Public Sub Toto", si tu veux que ça soit privé, ce sera "Private" à la place de "Public", dans le cas d'une form, tout est "Private".

Faut-il que Stata ne comporte aucun caractère alphabétique ?

Ni de nombres à virgule....

 

Est-ce que l'ordre de sélection des attributs quand je créé mon Bloc doit respecter celui plus haut ? Je pense que oui sinon les valeurs vont se répandre dans le mauvais ordre ?

Interroge l'etiquette :

 If MonBlock.GetAttributes(0).TagString="MonEtiquette1" Then
MonBlock.GetAttributes(0).TextString="MaValeur1"
End If

Bonne continuation

Nous n’ héritons pas de la terre de nos ancêtres.Nous l’empruntons à nos enfants.

Posté(e)

Whaaou, ces réponses c'est de l'or en fusion !

 

 

Je teste et je reposte.

 

Merci A++

 

 

"La ligne droite est le plus court chemin entre deux points, à condition que les deux points soient bien en face l'un de l'autre" P. Desproges.

  • 4 semaines après...
Posté(e)

C'est de l'or en fusion mais je m'y suis brulé les doigts...

 

Ca ne marche pas j'ai l'impression qu'il me manque qqchose. T'as un exemple en VBA tout fini qui traîne qqpart que je puisse l'analyser ? Ou bien tu veux que je rassemble mes morceaux que je te montre ?

 

C'est moins pressé car j'ai une solution de remplacement temporaire...

 

See you !

"La ligne droite est le plus court chemin entre deux points, à condition que les deux points soient bien en face l'un de l'autre" P. Desproges.

Posté(e)

T'as un exemple en VBA tout fini qui traîne qqpart que je puisse l'analyser ?

Vi , mais c'est avec une form

file moi un mail comme ça t'auras la totale.

Nous n’ héritons pas de la terre de nos ancêtres.Nous l’empruntons à nos enfants.

Posté(e)

Whoua ! La classe !

 

phil_vsd@yahoo.fr

 

Merci d'avance !

"La ligne droite est le plus court chemin entre deux points, à condition que les deux points soient bien en face l'un de l'autre" P. Desproges.

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité