Garder deux formulaires superposés

Le
Fabien
Bonjour,
J'ai besoin de garder deux formulaires superposés en toutes
circonstances.Le premier est transparent et le second représente le fond
du premier.
On ne peut ni les déplacer, ni les réduire, ni les agrandir, pas de
cadre, pas de bandeau, pas de bouton min max fermeture.
Lorsque l'on réduit le taille de la fenêtre Access, ils ne sont plus
superposés.Si l'on remet la fenêtre en plein écran tout redevient ok.
Les deux ont la propriété auto-centré à Oui.
Une idée, une piste ???
Merci
Fabien
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
3stone
Le #6337981
Salut,

"Fabien"
| J'ai besoin de garder deux formulaires superposés en toutes
| circonstances.Le premier est transparent et le second représente le fond
| du premier.
| On ne peut ni les déplacer, ni les réduire, ni les agrandir, pas de
| cadre, pas de bandeau, pas de bouton min max fermeture.
| Lorsque l'on réduit le taille de la fenêtre Access, ils ne sont plus
| superposés.Si l'on remet la fenêtre en plein écran tout redevient ok.
| Les deux ont la propriété auto-centré à Oui.
| Une idée, une piste ???


Si ces deux formulaires sont de toute façon superposés, j'utiliserai
soit une boite d'onglet pour les coller sur une page ou bien, plus
simplement un formulaire sur lequel je pose 2 controles sous-form.
Et juste un bouton pour les rendre visible altenativement...

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)
Fabien
Le #6337901
Salut,

"Fabien"
| J'ai besoin de garder deux formulaires superposés en toutes
| circonstances.Le premier est transparent et le second représente le fond
| du premier.
| On ne peut ni les déplacer, ni les réduire, ni les agrandir, pas de
| cadre, pas de bandeau, pas de bouton min max fermeture.
| Lorsque l'on réduit le taille de la fenêtre Access, ils ne sont plus
| superposés.Si l'on remet la fenêtre en plein écran tout redevient ok.
| Les deux ont la propriété auto-centré à Oui.
| Une idée, une piste ???


Si ces deux formulaires sont de toute façon superposés, j'utiliserai
soit une boite d'onglet pour les coller sur une page ou bien, plus
simplement un formulaire sur lequel je pose 2 controles sous-form.
Et juste un bouton pour les rendre visible altenativement...

Bonjour 3Stone

Oui sauf que ...
Sauf que la fonction qui permet de rendre les formulaires transparent
s'applique a la fenetre et pas au formulaire (oui je sais je l'ai pas
précisé ;-)
Ma question été mal formulée :-(. J'aurais du demander comment garder 2
fenetres superposées.
Avant http://cjoint.com/?mfjgSvOBNI
aprés : http://cjoint.com/?mfjhINykcd

3stone
Le #6337801
Salut,

"Fabien"
| > "Fabien"
| > | J'ai besoin de garder deux formulaires superposés en toutes
| > | circonstances.Le premier est transparent et le second représente le fond
| > | du premier.
| > | On ne peut ni les déplacer, ni les réduire, ni les agrandir, pas de
| > | cadre, pas de bandeau, pas de bouton min max fermeture.
| > | Lorsque l'on réduit le taille de la fenêtre Access, ils ne sont plus
| > | superposés.Si l'on remet la fenêtre en plein écran tout redevient ok.
| > | Les deux ont la propriété auto-centré à Oui.
| > | Une idée, une piste ???
| >
| >
| > Si ces deux formulaires sont de toute façon superposés, j'utiliserai
| > soit une boite d'onglet pour les coller sur une page ou bien, plus
| > simplement un formulaire sur lequel je pose 2 controles sous-form.
| > Et juste un bouton pour les rendre visible altenativement...
| >
| Bonjour 3Stone
| Oui sauf que ...
| Sauf que la fonction qui permet de rendre les formulaires transparent
| s'applique a la fenetre et pas au formulaire (oui je sais je l'ai pas
| précisé ;-)
| Ma question été mal formulée :-(. J'aurais du demander comment garder 2
| fenetres superposées.
| Avant http://cjoint.com/?mfjgSvOBNI
| aprés : http://cjoint.com/?mfjhINykcd


Ah, je comprends mieux ce qui est recherché...

Mais, le fait de réduire la fenêtre Access déplace les fenêtres... et cela
sans que du code interfère ? Bizarre...

Access étant un soft particulier quant à ses fenêtres et autres boutons,
je me méfie des manipulations de ces objets, même si ces manipulations
fonctionnent bien dans d'autres cas.
De plus, comme je peux voir, c'est juste pour faire 'zoli' ;-))

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)
Michel_D
Le #6337181
Bonjour,
J'ai besoin de garder deux formulaires superposés en toutes
circonstances.Le premier est transparent et le second représente le fond
du premier.
On ne peut ni les déplacer, ni les réduire, ni les agrandir, pas de
cadre, pas de bandeau, pas de bouton min max fermeture.
Lorsque l'on réduit le taille de la fenêtre Access, ils ne sont plus
superposés.Si l'on remet la fenêtre en plein écran tout redevient ok.
Les deux ont la propriété auto-centré à Oui.
Une idée, une piste ???
Merci
Fabien



C'est toujours pour ton TreeView.

A priori le fait que l'un se déplace par rapport à l'autre, c'est
qu'un formulaire est indépendant et pas l'autre, moi j'essaierai
de les mettre tous les deux indépendants et d'utiliser si nécessaire
SetForegroundWindow pour mettre la fenêtre transparente au premier plan.

Declare Function SetForegroundWindow Lib "user32" Alias "SetForegroundWindow" (ByVal hwnd As Long) As Long

Fabien
Le #6337021
Salut,

"Fabien"
| > "Fabien"
| > | J'ai besoin de garder deux formulaires superposés en toutes
| > | circonstances.Le premier est transparent et le second représente le fond
| > | du premier.
| > | On ne peut ni les déplacer, ni les réduire, ni les agrandir, pas de
| > | cadre, pas de bandeau, pas de bouton min max fermeture.
| > | Lorsque l'on réduit le taille de la fenêtre Access, ils ne sont plus
| > | superposés.Si l'on remet la fenêtre en plein écran tout redevient ok.
| > | Les deux ont la propriété auto-centré à Oui.
| > | Une idée, une piste ???
| >
| >
| > Si ces deux formulaires sont de toute façon superposés, j'utiliserai
| > soit une boite d'onglet pour les coller sur une page ou bien, plus
| > simplement un formulaire sur lequel je pose 2 controles sous-form.
| > Et juste un bouton pour les rendre visible altenativement...
| >
| Bonjour 3Stone
| Oui sauf que ...
| Sauf que la fonction qui permet de rendre les formulaires transparent
| s'applique a la fenetre et pas au formulaire (oui je sais je l'ai pas
| précisé ;-)
| Ma question été mal formulée :-(. J'aurais du demander comment garder 2
| fenetres superposées.
| Avant http://cjoint.com/?mfjgSvOBNI
| aprés : http://cjoint.com/?mfjhINykcd


Ah, je comprends mieux ce qui est recherché...

Mais, le fait de réduire la fenêtre Access déplace les fenêtres... et cela
sans que du code interfère ? Bizarre...

Access étant un soft particulier quant à ses fenêtres et autres boutons,
je me méfie des manipulations de ces objets, même si ces manipulations
fonctionnent bien dans d'autres cas.
De plus, comme je peux voir, c'est juste pour faire 'zoli' ;-))

Salut 3Stone

Ben oui c'est pour faire zoli ;-) mais ça le fait ....
@+

Fabien
Le #6337011
Bonjour,
J'ai besoin de garder deux formulaires superposés en toutes
circonstances.Le premier est transparent et le second représente le
fond du premier.
On ne peut ni les déplacer, ni les réduire, ni les agrandir, pas de
cadre, pas de bandeau, pas de bouton min max fermeture.
Lorsque l'on réduit le taille de la fenêtre Access, ils ne sont plus
superposés.Si l'on remet la fenêtre en plein écran tout redevient ok.
Les deux ont la propriété auto-centré à Oui.
Une idée, une piste ???
Merci
Fabien



C'est toujours pour ton TreeView.

A priori le fait que l'un se déplace par rapport à l'autre, c'est
qu'un formulaire est indépendant et pas l'autre, moi j'essaierai
de les mettre tous les deux indépendants et d'utiliser si nécessaire
SetForegroundWindow pour mettre la fenêtre transparente au premier plan.

Declare Function SetForegroundWindow Lib "user32" Alias
"SetForegroundWindow" (ByVal hwnd As Long) As Long
Merci

je vais regarder çà
@+


Fabien
Le #6336791
Bonjour,
J'ai besoin de garder deux formulaires superposés en toutes
circonstances.Le premier est transparent et le second représente le
fond du premier.
On ne peut ni les déplacer, ni les réduire, ni les agrandir, pas de
cadre, pas de bandeau, pas de bouton min max fermeture.
Lorsque l'on réduit le taille de la fenêtre Access, ils ne sont plus
superposés.Si l'on remet la fenêtre en plein écran tout redevient ok.
Les deux ont la propriété auto-centré à Oui.
Une idée, une piste ???
Merci
Fabien



C'est toujours pour ton TreeView.

A priori le fait que l'un se déplace par rapport à l'autre, c'est
qu'un formulaire est indépendant et pas l'autre, moi j'essaierai
de les mettre tous les deux indépendants et d'utiliser si nécessaire
SetForegroundWindow pour mettre la fenêtre transparente au premier plan.

Declare Function SetForegroundWindow Lib "user32" Alias
"SetForegroundWindow" (ByVal hwnd As Long) As Long
Merci

je vais regarder çà
@+
Salut

Décidement c'est pas ma tasse de thé (pourtant vue l'heure ...)
Je ne parvient pas a 'forcer' le second formulaire a passer au premier
plan. Pourtant la fonction me semble facile à utiliser :

Private Declare Function SetActiveWindow Lib "user32" (ByVal hwnd As
Long) As Long

Public Function Place_en_avant_plan(frm As Form)
Dim Ret As Long
Ret = SetForegroundWindow(frm.hwnd)
End Function

Je place l'appel aprés le chargement du formulaire8 (celui qui doit être
transparent) lors de l'open du formulaire0 (celui qui doit être 'dessous').

Private Sub Form_Open(Cancel As Integer)
If Not (EstChargé("Formulaire8")) Then
'DoCmd.OpenForm "Formulaire8", acNormal, , , , acHidden
blRet = PositionFormRelativeToControl("Formulaire8", Me.Trait5, 2)
'Pour placer le formulaire8 a droite d'un trait => il est toujours au
bon endroit sur le formulaire0
End If
WindowTransparent Forms!formulaire8, False
Forms!Formulaire8.Visible = True
Place_en_avant_plan Forms!Formulaire8
End Sub
Pour les deux formulaires propriété Fenêtre indép :oui

Qu'est ce qui cloche ?
@+



Michel_D
Le #6336551
"Fabien"
Bonjour,
J'ai besoin de garder deux formulaires superposés en toutes
circonstances.Le premier est transparent et le second représente le
fond du premier.
On ne peut ni les déplacer, ni les réduire, ni les agrandir, pas de
cadre, pas de bandeau, pas de bouton min max fermeture.
Lorsque l'on réduit le taille de la fenêtre Access, ils ne sont plus
superposés.Si l'on remet la fenêtre en plein écran tout redevient ok.
Les deux ont la propriété auto-centré à Oui.
Une idée, une piste ???
Merci
Fabien



C'est toujours pour ton TreeView.

A priori le fait que l'un se déplace par rapport à l'autre, c'est
qu'un formulaire est indépendant et pas l'autre, moi j'essaierai
de les mettre tous les deux indépendants et d'utiliser si nécessaire
SetForegroundWindow pour mettre la fenêtre transparente au premier plan.

Declare Function SetForegroundWindow Lib "user32" Alias
"SetForegroundWindow" (ByVal hwnd As Long) As Long
Merci

je vais regarder çà
@+
Salut

Décidement c'est pas ma tasse de thé (pourtant vue l'heure ...)
Je ne parvient pas a 'forcer' le second formulaire a passer au premier
plan. Pourtant la fonction me semble facile à utiliser :

Private Declare Function SetActiveWindow Lib "user32" (ByVal hwnd As
Long) As Long

Public Function Place_en_avant_plan(frm As Form)
Dim Ret As Long
Ret = SetForegroundWindow(frm.hwnd)
End Function

Je place l'appel aprés le chargement du formulaire8 (celui qui doit être
transparent) lors de l'open du formulaire0 (celui qui doit être 'dessous').

Private Sub Form_Open(Cancel As Integer)
If Not (EstChargé("Formulaire8")) Then
'DoCmd.OpenForm "Formulaire8", acNormal, , , , acHidden
blRet = PositionFormRelativeToControl("Formulaire8", Me.Trait5, 2)
'Pour placer le formulaire8 a droite d'un trait => il est toujours au
bon endroit sur le formulaire0
End If
WindowTransparent Forms!formulaire8, False
Forms!Formulaire8.Visible = True
Place_en_avant_plan Forms!Formulaire8
End Sub
Pour les deux formulaires propriété Fenêtre indép :oui

Qu'est ce qui cloche ?



Alors je n'ai pas testé, mais apparemment tu ouvre le formulaire0
qui contient ton fond et dans l'événement open de ce formulaire tu
ouvre ton formulaire8 (treeview) transparent; il faudrait essayer
d'ouvrir le formulaire8 et dans l'événement open le formulaire0.




Publicité
Poster une réponse
Anonyme