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

Vos contributions VB6 Discussion :

Une barre systéme pour frm


Sujet :

Vos contributions VB6

  1. #1
    Expert éminent sénior
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 115
    Points : 15 674
    Points
    15 674
    Par défaut Une barre systéme pour frm
    Un OCX qui peut être utiles dans certaines situations où l'on veut maîtriser au mieux l’utilisation du programme mis a disposition de l’utilisateur final.
    Il s’agit d’une barre système pour une frm, remplacent la barre par défaut.
    Le projet inclus, donne un aperçu, il reste à chacun de découvrir d’autres utilisations possibles.

    Motif de l'edit, le zip complet est plus bas

  2. #2
    Expert éminent
    Avatar de ThierryAIM
    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    3 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2002
    Messages : 3 673
    Points : 8 524
    Points
    8 524
    Par défaut
    Merci ProgElecT

    Mais le principe de ce forum Contributions et Sources, c'est de partager des codes sources ou des code exemples

    Or il n'y a pas le source du composant BarSystem

    Je peux comprendre que tu ne veuilles pas le partager, c'est ton droit le plus absolu, mais je ne peux pas publier celà dans la page Sources

    ce topic peut néanmoins resté ici, si ce composant interesse qq'un

    Bon w-e

  3. #3
    Expert éminent sénior
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 115
    Points : 15 674
    Points
    15 674
    Par défaut
    Or il n'y a pas le source du composant BarSystem
    Je ne pensai pas que cela interesserait, mais n'etant pas un professionnel, je n'ai aucune intention de vendre le code source de l'ocx, je rajoute donc le ZIP de celui-ci.

    Motif de l'edit, le zip complet est plus bas

  4. #4
    Expert éminent
    Avatar de ThierryAIM
    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    3 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2002
    Messages : 3 673
    Points : 8 524
    Points
    8 524
    Par défaut


    Merci

    En fait l'idée de partager les codes sources, c'est que chacun puisse trouver une piste ou un exemple pour son propre problème
    Donc des progs qui n'ont pas les sources n'interessent guère, sauf à l'exploiter tel que, mais ce n'ai pas ce que recherchent les forumeurs, en général

    en tout cas, Merci encore

  5. #5
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    Bonsoir, ProgElecT...

    dans le même ordre d'idée que Thierry .. pour le publier dans les sources .. l'idéal serai un seul Zip... (cela m'éviterai une gymnastique douteuse....)

    encore pour tes contributions..

  6. #6
    Expert éminent sénior
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 115
    Points : 15 674
    Points
    15 674
    Par défaut
    Voilà la réunion en un seul ZIP, source utilitaire, source de l'OCX et l'OCX
    FrmBarSysTem.zip(61,3Ko)

    Edit: modification de l'utilitaire de démo et meilleur organisation du ZIP

  7. #7
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Points : 2 416
    Points
    2 416
    Par défaut
    Bonjour ProgElec,

    Très belle appli
    Je la met dans mes source et l'employerais certainement.

    Un petit bug dans la sub

    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
    16
    17
    18
    19
    20
    21
    Private Sub CmdcoulOmbr_Click(Index As Integer)
    'pour modifer l'effet ombre couleur
    If Chargement = True Then Exit Sub
    CommonDialog1.CancelError = True
    CommonDialog1.Flags = cdlCCRGBInit
    If Index = 0 Then
     CommonDialog1.Color = MFBarSys1.TitreColorOmbre
     Else
     CommonDialog1.Color = MFBarSys1.InfosColorOmbre
    End If
    'Si l'utilisateur clique sur annuler, se plante.. J'ai ajouté
     On Error Resume Next
     
    CommonDialog1.ShowColor
    If Err.Number <> 0 Then Exit Sub
    If Index = 0 Then
     MFBarSys1.TitreColorOmbre = CommonDialog1.Color
     Else
     MFBarSys1.InfosColorOmbre = CommonDialog1.Color
    End If
    End Sub
    Merci
    A+

    PS: autre solution, supprimé la ligne
    CommonDialog1.CancelError = True

  8. #8
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Points : 2 416
    Points
    2 416
    Par défaut
    Tant que j'y suis,

    pourquoi mettre un CheckBox avec index 0 qui ne donne que l'affichage d'une valeur non valide ? (le None)

    pourquoi la ligne..

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If New_Emplacement < 1 Or New_Emplacement > 4 Then MsgBox "Valeur non valide", vbCritical: Exit Property
    Alors que l'utilisateur n'a pas la possibilité de faire une erreur ?

    Autre remarque, j'ai un peu chiqué pour assembler les projets, personnelement (ça n'engage que moi et ce n'est pas mon bon jour )
    Je mettrais tout dans un seul répertoir, mettre l'OCX dans la forme de test (Form1) que je renommerai FormTest et je sauverai le groupe de projet. De cette façon, tu charge le ZIP, dans le répertoir tu trouve le groupe de projet et tu clic GO et ça marche.

    Et pour info, l'OCX ne doit pas obligatoirement être dans system32, il peut être dans le répertoir de l'appli.

    L'OCX (compilé) ne doit pas obligatoirement être joint au zip, il y a toujours moyen de le compilé à partir de la source.

    J'espère que tu ne m'en voudras pas trop de ces remarques, je l'ai fait à fin d'amélioration, et n'enlève rien à la qualité de ton appli.

    A+

  9. #9
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Points : 2 416
    Points
    2 416
    Par défaut
    Bonjour,

    J'ai apprécié ta réponse personnelle.

    J'ai encore une remarque à faire et celle là elle est de taille, l'OCX ne fonctionne absolument pas sous Vista.

    Pour les essais j'avais juste employé le Groupe de projet, mais lorsque j'ai voulu compiler l'OCX c'est impossible, il m'affiche erreur dans le régistre, lequel ?? je n'en sais rien.

    J'ai déjà eu ce genre de problème avec un OCX perso, mais j'ai pu y remédier en réactualisant un composant. (panel3D ne fonctionne pas sous Vista je l'ai remplacé par Frame et c'est passé.

    Mais ton OCX ne me permet même pas de modifier le design de l'UC. ?? donc impossible de remplacer certain contrôle.

    Je me suis dit, beeeeh tant pis, je joindrai le code et l'UC, mais même comme ça cela ne va pas, impossible de créer l'EXE.

    Dommage, car le cadre avait le même aspect que les fenêtre Vista.

    A l'occasion je le re créerais entièrement sous Vista, et te le communiquerai.

    Cordialement

  10. #10
    Expert éminent sénior
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 115
    Points : 15 674
    Points
    15 674
    Par défaut
    J'ai encore une remarque à faire et celle là elle est de taille, l'OCX ne fonctionne absolument pas sous Vista
    Merci de me signaler ce probléme
    Je dois changer de PC, mais j'attend le debugage de VISTA, de se fait je n'est pas eu l'occasion de faire des essayer.

  11. #11
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Points : 2 416
    Points
    2 416
    Par défaut
    Bonjour,
    Comme les problèmes non solutionnés me trottent dans la tête, j'y suis revenu
    Et 1ére constatation, j'ai pu créer l'OCX, mais pour cela il fallait être, sur Vista familial , en 'Super Administrateur' et il n'y a que quelques jours que j'ai pu enfin y arriver. (cela n'a pas été de la tarte)
    Mais autre remarque, a-tu essayés de faire l' EXE du projet test ? , car moi je n'y arrive toujours pas, je crois que c'est du au fait que tu supprime la barre de titre de la forme, il manque donc des données binaires et VB refuse de complilé.
    Je n'ai pas encore compris comment tu enlevais la barre de titre, mais serrait-il possible de ne l'enlever que lors du load ? je crois qu'alord cela devrait allé.
    A voir !
    Cordialement

  12. #12
    Expert éminent sénior
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 115
    Points : 15 674
    Points
    15 674
    Par défaut J,aime bien les bonnes nouvelles.
    Et 1ére constatation, j'ai pu créer l'OCX
    J,aime bien les bonnes nouvelles.

    Je n'ai pas encore compris comment tu enlevais la barre de titre
    Form.BorderStyle = 0 (None), vue tes capacités de programmeur, c'est sûrement moi qui n'est pas compris là question.

    possible de ne l'enlever que lors du load ? je crois qu'alord cela devrait allé
    Pour supprimer dynamiquement la barre des titres dans le Load, sur un Form, 2 CommandButtons Form.BorderStyle étant tout sauf 0 (NONE) puisque c'est le but à atteindre par code
    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
    16
    17
    18
    19
    20
    21
    22
    23
    Option Explicit
    Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
    Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
    Const WS_CAPTION = &HC00000
    Const GWL_STYLE = (-16)
     
    Public Sub CacherBarreTitre()
        Call SetWindowLong(Me.hwnd, GWL_STYLE, GetWindowLong(Me.hwnd, GWL_STYLE) Xor WS_CAPTION)
    End Sub
     
    Private Sub Form_Load()
    CacherBarreTitre
    End Sub
    Private Sub Command1_Click()
    ' en fait, bascule de cachée a non cachée
    CacherBarreTitre
    'cette ligne rajoutée, sinon la barre des titres reste
    Me.Height = Me.Height + 15: Me.Height = Me.Height - 15
    End Sub
    Private Sub Command2_Click()
    'par mesure de securité
    Unload Me
    End Sub
    A+

  13. #13
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Points : 2 416
    Points
    2 416
    Par défaut
    Non, ont ne s'est pas mal compris, je comprend la sub CacheBarre, mais la propriété BorderStyle=2 (voir l'image jointe) et ce que je ne comprend pas c'est qu'il y a un bord gris de l'épaisseur des cadres Windows, quand je sélectionne autre chose que la feuille le cadre disparait (non visible sur l'image)
    Tout ça dans l'IDE, PAS EN EXECUTION.
    J'ai fait un autre essais, ajouter Form2 et coller le contrôle, démarrer avec form2 et là OK, la feuille est mise avec BorderStyle à 0 ,mais IL N'Y A PLUS DE CADRE ?
    peut être les constantes dans SetWindowLong ne sont pas les bonnes ?
    Mais je ne les ais pas sous la main pour controler.
    Mystère,Mystère....
    Ou bien encore une de ces "drôlderies" procurée par Vista.

    Ah oui, encore petite remarque, tu met les retraits de tes contrôles en dur dans le prog, mais je n'ai pas le même écran que toi, donc les mesures ne sont pas tout a fait bonnes. Il serrait plus approprié de faire un ratio avec les fonctions Screen.TwipsPixelX et Y
    A+

    PS: Je crois que je vais attendre que tu ai Vista pour que l'ont puissent discuter de la même chose.
    Images attachées Images attachées  

Discussions similaires

  1. Une petit plus pour barre d'outils personnalisée
    Par CBleu dans le forum Access
    Réponses: 1
    Dernier message: 27/01/2006, 12h55
  2. une balise HTMl pour affichage de la page sans barre de déf
    Par ghita269 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 19/01/2006, 02h01
  3. Est ce que ça existe une api java pour code barre ?
    Par miloud dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 14/04/2005, 18h20
  4. [] Raccourci clavier pour bouton d'une barre d'outil
    Par Sébastien dans le forum VB 6 et antérieur
    Réponses: 12
    Dernier message: 24/03/2003, 18h02

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