J'aurais aimé savoir comment créer dynamiquement des boutons dans un
form en fonction des données d'une table.
Ex : J'ai n enregistrements dans une table, je voudrais que le form me
génère (à l'ouverture par exemple) n boutons, avec pour titre un des champs
de la table.
Je ne doute pas que cela soit possible, il m'aurait juste fallu une piste...
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Raymond [mvp]
Bonjour.
La méthode CreateControl crée un contrôle dans un formulaire ouvert en mode design. Tu ne peux donc pas créer un contrôle dans ton propre formulaire. Je te donne ci-dessous l'exemple de l'aide en ligne qu'il te faudra consulter. Sub NewControls() Dim frm As Form Dim ctlLabel As Control, ctlText As Control Dim intDataX As Integer, intDataY As Integer Dim intLabelX As Integer, intLabelY As Integer
' Create new form with Orders table as its record source. Set frm = CreateForm frm.RecordSource = "Orders" ' Set positioning values for new controls. intLabelX = 100 intLabelY = 100 intDataX = 1000 intDataY = 100 ' Create unbound default-size text box in detail section. Set ctlText = CreateControl(frm.Name, acTextBox, , "", "", _ intDataX, intDataY) ' Create child label control for text box. Set ctlLabel = CreateControl(frm.Name, acLabel, , _ ctlText.Name, "NewLabel", intLabelX, intLabelY) ' Restore form. DoCmd.Restore End Sub
c'est une piste à explorer. -- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Sun Service" a écrit dans le message de news:c7pvnn$b9l$
Bonjour à tous,
J'aurais aimé savoir comment créer dynamiquement des boutons dans un form en fonction des données d'une table. Ex : J'ai n enregistrements dans une table, je voudrais que le form me génère (à l'ouverture par exemple) n boutons, avec pour titre un des champs
de la table.
Je ne doute pas que cela soit possible, il m'aurait juste fallu une piste...
Merciiii
Laurent
Bonjour.
La méthode CreateControl crée un contrôle dans un formulaire ouvert en mode
design. Tu ne peux donc pas créer un contrôle dans ton propre formulaire.
Je te donne ci-dessous l'exemple de l'aide en ligne qu'il te faudra
consulter.
Sub NewControls()
Dim frm As Form
Dim ctlLabel As Control, ctlText As Control
Dim intDataX As Integer, intDataY As Integer
Dim intLabelX As Integer, intLabelY As Integer
' Create new form with Orders table as its record source.
Set frm = CreateForm
frm.RecordSource = "Orders"
' Set positioning values for new controls.
intLabelX = 100
intLabelY = 100
intDataX = 1000
intDataY = 100
' Create unbound default-size text box in detail section.
Set ctlText = CreateControl(frm.Name, acTextBox, , "", "", _
intDataX, intDataY)
' Create child label control for text box.
Set ctlLabel = CreateControl(frm.Name, acLabel, , _
ctlText.Name, "NewLabel", intLabelX, intLabelY)
' Restore form.
DoCmd.Restore
End Sub
c'est une piste à explorer.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Sun Service" <sun.service@wanadoo.fr> a écrit dans le message de
news:c7pvnn$b9l$1@news-reader2.wanadoo.fr...
Bonjour à tous,
J'aurais aimé savoir comment créer dynamiquement des boutons dans un
form en fonction des données d'une table.
Ex : J'ai n enregistrements dans une table, je voudrais que le form me
génère (à l'ouverture par exemple) n boutons, avec pour titre un des
champs
de la table.
Je ne doute pas que cela soit possible, il m'aurait juste fallu une
piste...
La méthode CreateControl crée un contrôle dans un formulaire ouvert en mode design. Tu ne peux donc pas créer un contrôle dans ton propre formulaire. Je te donne ci-dessous l'exemple de l'aide en ligne qu'il te faudra consulter. Sub NewControls() Dim frm As Form Dim ctlLabel As Control, ctlText As Control Dim intDataX As Integer, intDataY As Integer Dim intLabelX As Integer, intLabelY As Integer
' Create new form with Orders table as its record source. Set frm = CreateForm frm.RecordSource = "Orders" ' Set positioning values for new controls. intLabelX = 100 intLabelY = 100 intDataX = 1000 intDataY = 100 ' Create unbound default-size text box in detail section. Set ctlText = CreateControl(frm.Name, acTextBox, , "", "", _ intDataX, intDataY) ' Create child label control for text box. Set ctlLabel = CreateControl(frm.Name, acLabel, , _ ctlText.Name, "NewLabel", intLabelX, intLabelY) ' Restore form. DoCmd.Restore End Sub
c'est une piste à explorer. -- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Sun Service" a écrit dans le message de news:c7pvnn$b9l$
Bonjour à tous,
J'aurais aimé savoir comment créer dynamiquement des boutons dans un form en fonction des données d'une table. Ex : J'ai n enregistrements dans une table, je voudrais que le form me génère (à l'ouverture par exemple) n boutons, avec pour titre un des champs
de la table.
Je ne doute pas que cela soit possible, il m'aurait juste fallu une piste...
Merciiii
Laurent
Sun Service
Ah oui ok...ça ne va en effet pas me convenir...Je pense que tu as compris ce que je veux faire, que penses tu si j'utilises un form avec plein de boutons et que je fais des .visible = false ou .visible = true ? C'est une bonne solution alternative, ou bien c'est un peu "crétin" ?
Merci
Laurent
"Raymond [mvp]" a écrit dans le message de news:
Bonjour.
La méthode CreateControl crée un contrôle dans un formulaire ouvert en mode
design. Tu ne peux donc pas créer un contrôle dans ton propre formulaire. Je te donne ci-dessous l'exemple de l'aide en ligne qu'il te faudra consulter. Sub NewControls() Dim frm As Form Dim ctlLabel As Control, ctlText As Control Dim intDataX As Integer, intDataY As Integer Dim intLabelX As Integer, intLabelY As Integer
' Create new form with Orders table as its record source. Set frm = CreateForm frm.RecordSource = "Orders" ' Set positioning values for new controls. intLabelX = 100 intLabelY = 100 intDataX = 1000 intDataY = 100 ' Create unbound default-size text box in detail section. Set ctlText = CreateControl(frm.Name, acTextBox, , "", "", _ intDataX, intDataY) ' Create child label control for text box. Set ctlLabel = CreateControl(frm.Name, acLabel, , _ ctlText.Name, "NewLabel", intLabelX, intLabelY) ' Restore form. DoCmd.Restore End Sub
c'est une piste à explorer. -- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Sun Service" a écrit dans le message de news:c7pvnn$b9l$
Bonjour à tous,
J'aurais aimé savoir comment créer dynamiquement des boutons dans un form en fonction des données d'une table. Ex : J'ai n enregistrements dans une table, je voudrais que le form me génère (à l'ouverture par exemple) n boutons, avec pour titre un des champs
de la table.
Je ne doute pas que cela soit possible, il m'aurait juste fallu une piste...
Merciiii
Laurent
Ah oui ok...ça ne va en effet pas me convenir...Je pense que tu as compris
ce que je veux faire, que penses tu si j'utilises un form avec plein de
boutons et que je fais des .visible = false ou .visible = true ? C'est une
bonne solution alternative, ou bien c'est un peu "crétin" ?
Merci
Laurent
"Raymond [mvp]" <XYZ.access.seneque@free.fr> a écrit dans le message de
news: eiDDtuyNEHA.3084@TK2MSFTNGP12.phx.gbl...
Bonjour.
La méthode CreateControl crée un contrôle dans un formulaire ouvert en
mode
design. Tu ne peux donc pas créer un contrôle dans ton propre formulaire.
Je te donne ci-dessous l'exemple de l'aide en ligne qu'il te faudra
consulter.
Sub NewControls()
Dim frm As Form
Dim ctlLabel As Control, ctlText As Control
Dim intDataX As Integer, intDataY As Integer
Dim intLabelX As Integer, intLabelY As Integer
' Create new form with Orders table as its record source.
Set frm = CreateForm
frm.RecordSource = "Orders"
' Set positioning values for new controls.
intLabelX = 100
intLabelY = 100
intDataX = 1000
intDataY = 100
' Create unbound default-size text box in detail section.
Set ctlText = CreateControl(frm.Name, acTextBox, , "", "", _
intDataX, intDataY)
' Create child label control for text box.
Set ctlLabel = CreateControl(frm.Name, acLabel, , _
ctlText.Name, "NewLabel", intLabelX, intLabelY)
' Restore form.
DoCmd.Restore
End Sub
c'est une piste à explorer.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Sun Service" <sun.service@wanadoo.fr> a écrit dans le message de
news:c7pvnn$b9l$1@news-reader2.wanadoo.fr...
Bonjour à tous,
J'aurais aimé savoir comment créer dynamiquement des boutons dans un
form en fonction des données d'une table.
Ex : J'ai n enregistrements dans une table, je voudrais que le form me
génère (à l'ouverture par exemple) n boutons, avec pour titre un des
champs
de la table.
Je ne doute pas que cela soit possible, il m'aurait juste fallu une
piste...
Ah oui ok...ça ne va en effet pas me convenir...Je pense que tu as compris ce que je veux faire, que penses tu si j'utilises un form avec plein de boutons et que je fais des .visible = false ou .visible = true ? C'est une bonne solution alternative, ou bien c'est un peu "crétin" ?
Merci
Laurent
"Raymond [mvp]" a écrit dans le message de news:
Bonjour.
La méthode CreateControl crée un contrôle dans un formulaire ouvert en mode
design. Tu ne peux donc pas créer un contrôle dans ton propre formulaire. Je te donne ci-dessous l'exemple de l'aide en ligne qu'il te faudra consulter. Sub NewControls() Dim frm As Form Dim ctlLabel As Control, ctlText As Control Dim intDataX As Integer, intDataY As Integer Dim intLabelX As Integer, intLabelY As Integer
' Create new form with Orders table as its record source. Set frm = CreateForm frm.RecordSource = "Orders" ' Set positioning values for new controls. intLabelX = 100 intLabelY = 100 intDataX = 1000 intDataY = 100 ' Create unbound default-size text box in detail section. Set ctlText = CreateControl(frm.Name, acTextBox, , "", "", _ intDataX, intDataY) ' Create child label control for text box. Set ctlLabel = CreateControl(frm.Name, acLabel, , _ ctlText.Name, "NewLabel", intLabelX, intLabelY) ' Restore form. DoCmd.Restore End Sub
c'est une piste à explorer. -- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Sun Service" a écrit dans le message de news:c7pvnn$b9l$
Bonjour à tous,
J'aurais aimé savoir comment créer dynamiquement des boutons dans un form en fonction des données d'une table. Ex : J'ai n enregistrements dans une table, je voudrais que le form me génère (à l'ouverture par exemple) n boutons, avec pour titre un des champs
de la table.
Je ne doute pas que cela soit possible, il m'aurait juste fallu une piste...
Merciiii
Laurent
Raymond [mvp]
On ne peut pas répondre comme ça. le nombre de boutons est-il fixe dans son maximum ? si oui, tu peux procéder par True/false sur la propriété visible mais il faut que les fonctions affectées à ces boutons soient fixes. N'abandonnes pas la solution création car c'est faisable assez facilement. au lieu de lancer ton formulaire ( de saisie par exemple) tu lances le formulaire création qui ouvres le formulaire de saisie en mode caché, qui crée les boutons et les fonctions, sauvegarde et ouvre le formulaire de saisie en mode normal avec de beaux boutons.
-- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Sun Service" a écrit dans le message de news:c7q18c$cmo$
Ah oui ok...ça ne va en effet pas me convenir...Je pense que tu as compris ce que je veux faire, que penses tu si j'utilises un form avec plein de boutons et que je fais des .visible = false ou .visible = true ? C'est une bonne solution alternative, ou bien c'est un peu "crétin" ?
Merci
Laurent
On ne peut pas répondre comme ça. le nombre de boutons est-il fixe dans son
maximum ? si oui, tu peux procéder par True/false sur la propriété visible
mais il faut que les fonctions affectées à ces boutons soient fixes.
N'abandonnes pas la solution création car c'est faisable assez facilement.
au lieu de lancer ton formulaire ( de saisie par exemple) tu lances le
formulaire création qui ouvres le formulaire de saisie en mode caché, qui
crée les boutons et les fonctions, sauvegarde et ouvre le formulaire de
saisie en mode normal avec de beaux boutons.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Sun Service" <sun.service@wanadoo.fr> a écrit dans le message de
news:c7q18c$cmo$1@news-reader3.wanadoo.fr...
Ah oui ok...ça ne va en effet pas me convenir...Je pense que tu as compris
ce que je veux faire, que penses tu si j'utilises un form avec plein de
boutons et que je fais des .visible = false ou .visible = true ? C'est une
bonne solution alternative, ou bien c'est un peu "crétin" ?
On ne peut pas répondre comme ça. le nombre de boutons est-il fixe dans son maximum ? si oui, tu peux procéder par True/false sur la propriété visible mais il faut que les fonctions affectées à ces boutons soient fixes. N'abandonnes pas la solution création car c'est faisable assez facilement. au lieu de lancer ton formulaire ( de saisie par exemple) tu lances le formulaire création qui ouvres le formulaire de saisie en mode caché, qui crée les boutons et les fonctions, sauvegarde et ouvre le formulaire de saisie en mode normal avec de beaux boutons.
-- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Sun Service" a écrit dans le message de news:c7q18c$cmo$
Ah oui ok...ça ne va en effet pas me convenir...Je pense que tu as compris ce que je veux faire, que penses tu si j'utilises un form avec plein de boutons et que je fais des .visible = false ou .visible = true ? C'est une bonne solution alternative, ou bien c'est un peu "crétin" ?
Merci
Laurent
Sun Service
Oui, c'est pas mal non plus, ok. En effet mon nombres max de boutons est fixé... bon, je vais faire mon choix parmis ces solutions En tout cas merci à toi, une fois de plus
Ciao
Laurent
"Raymond [mvp]" a écrit dans le message de news: OXHIv#
On ne peut pas répondre comme ça. le nombre de boutons est-il fixe dans son
maximum ? si oui, tu peux procéder par True/false sur la propriété visible mais il faut que les fonctions affectées à ces boutons soient fixes. N'abandonnes pas la solution création car c'est faisable assez facilement. au lieu de lancer ton formulaire ( de saisie par exemple) tu lances le formulaire création qui ouvres le formulaire de saisie en mode caché, qui crée les boutons et les fonctions, sauvegarde et ouvre le formulaire de saisie en mode normal avec de beaux boutons.
-- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Sun Service" a écrit dans le message de news:c7q18c$cmo$
Ah oui ok...ça ne va en effet pas me convenir...Je pense que tu as compris
ce que je veux faire, que penses tu si j'utilises un form avec plein de boutons et que je fais des .visible = false ou .visible = true ? C'est une
bonne solution alternative, ou bien c'est un peu "crétin" ?
Merci
Laurent
Oui, c'est pas mal non plus, ok.
En effet mon nombres max de boutons est fixé...
bon, je vais faire mon choix parmis ces solutions
En tout cas merci à toi, une fois de plus
Ciao
Laurent
"Raymond [mvp]" <XYZ.access.seneque@free.fr> a écrit dans le message de
news: OXHIv#yNEHA.1616@TK2MSFTNGP12.phx.gbl...
On ne peut pas répondre comme ça. le nombre de boutons est-il fixe dans
son
maximum ? si oui, tu peux procéder par True/false sur la propriété visible
mais il faut que les fonctions affectées à ces boutons soient fixes.
N'abandonnes pas la solution création car c'est faisable assez facilement.
au lieu de lancer ton formulaire ( de saisie par exemple) tu lances le
formulaire création qui ouvres le formulaire de saisie en mode caché, qui
crée les boutons et les fonctions, sauvegarde et ouvre le formulaire de
saisie en mode normal avec de beaux boutons.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Sun Service" <sun.service@wanadoo.fr> a écrit dans le message de
news:c7q18c$cmo$1@news-reader3.wanadoo.fr...
Ah oui ok...ça ne va en effet pas me convenir...Je pense que tu as
compris
ce que je veux faire, que penses tu si j'utilises un form avec plein de
boutons et que je fais des .visible = false ou .visible = true ? C'est
une
bonne solution alternative, ou bien c'est un peu "crétin" ?
Oui, c'est pas mal non plus, ok. En effet mon nombres max de boutons est fixé... bon, je vais faire mon choix parmis ces solutions En tout cas merci à toi, une fois de plus
Ciao
Laurent
"Raymond [mvp]" a écrit dans le message de news: OXHIv#
On ne peut pas répondre comme ça. le nombre de boutons est-il fixe dans son
maximum ? si oui, tu peux procéder par True/false sur la propriété visible mais il faut que les fonctions affectées à ces boutons soient fixes. N'abandonnes pas la solution création car c'est faisable assez facilement. au lieu de lancer ton formulaire ( de saisie par exemple) tu lances le formulaire création qui ouvres le formulaire de saisie en mode caché, qui crée les boutons et les fonctions, sauvegarde et ouvre le formulaire de saisie en mode normal avec de beaux boutons.
-- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Sun Service" a écrit dans le message de news:c7q18c$cmo$
Ah oui ok...ça ne va en effet pas me convenir...Je pense que tu as compris
ce que je veux faire, que penses tu si j'utilises un form avec plein de boutons et que je fais des .visible = false ou .visible = true ? C'est une
bonne solution alternative, ou bien c'est un peu "crétin" ?