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

C++ Discussion :

Interface graphique en C++/C#


Sujet :

C++

  1. #1
    Membre averti
    Femme Profil pro
    �tudiant
    Inscrit en
    F�vrier 2014
    Messages
    37
    D�tails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Alg�rie

    Informations professionnelles :
    Activit� : �tudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : F�vrier 2014
    Messages : 37
    Par d�faut Interface graphique en C++/C#
    Bonjour tous le monde;

    Je r�alise un projet en Visuel Studio C++, je voulais faire une interface graphique o� il y a des boutons, des zones textes et des listes pour visualiser mes r�sultats, affichage d'image ......
    Il m'ont propos� de la faire en C#, mon probl�me c comment faire pour int�grer le code C++ dans un bouton cr�er en C#

    et merci d'avance.

  2. #2
    Membre chevronn�

    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    Mars 2015
    Messages
    294
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (�le de France)

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels

    Informations forums :
    Inscription : Mars 2015
    Messages : 294
    Par d�faut
    Bonjour, si tu r�alises un projet en C ++ avec visual studio tu peux faire ton interface graphique en C++ avec les MFC de microsoft (c'est fourni avec visual studio community et visual studio pro) ou sinon en C++ avec Qt mais il faut installer Qt et l'addin Qt pour visual studio.

  3. #3
    Membre averti
    Femme Profil pro
    �tudiant
    Inscrit en
    F�vrier 2014
    Messages
    37
    D�tails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Alg�rie

    Informations professionnelles :
    Activit� : �tudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : F�vrier 2014
    Messages : 37
    Par d�faut
    Merci pour votre r�ponse; �a veut dire que c'est impossible de passer par C#?

  4. #4
    R�dacteur/Mod�rateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 153
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 38
    Localisation : Canada

    Informations professionnelles :
    Activit� : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 153
    Billets dans le blog
    4
    Par d�faut
    C'est possible. Pas forc�ment facile.
    Tu peux tr�s bien avoir ton application dans un dll ou qui fournisse une API Rest, ou n'importe quoi d'autre pour qu'un logiciel externe puisse r�cup�rer des r�sultats.
    De l� tu peux avoir une interface en C#, en Python, sur page Web, ou tout ce qui te passe par la t�te.
    Mais � priori ton niveau est bas et �a va juste compliquer les choses. Donc qui a propos� �a et pourquoi ?
    Pensez � consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation r�seau ?
    Aucune aide via MP ne sera dispens�e. Merci d'utiliser les forums pr�vus � cet effet.

  5. #5
    Membre averti
    Femme Profil pro
    �tudiant
    Inscrit en
    F�vrier 2014
    Messages
    37
    D�tails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Alg�rie

    Informations professionnelles :
    Activit� : �tudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : F�vrier 2014
    Messages : 37
    Par d�faut
    C'est un enseignant qui m' a propos� cette solution, est ce que vous pouvez m'envoyer un tutoriel, ou un petit exemple � suivre? .
    merci.

  6. #6
    Membre chevronn�
    Homme Profil pro
    Cadre informatique
    Inscrit en
    Avril 2013
    Messages
    183
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : Cadre informatique

    Informations forums :
    Inscription : Avril 2013
    Messages : 183
    Par d�faut
    Tu as tout ce qu'il te faut ici
    Et des tutos la

  7. #7
    Membre averti
    Femme Profil pro
    �tudiant
    Inscrit en
    F�vrier 2014
    Messages
    37
    D�tails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Alg�rie

    Informations professionnelles :
    Activit� : �tudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : F�vrier 2014
    Messages : 37
    Par d�faut
    Merci pour vos r�ponses, j'ai r�gl� le probl�me , d'abord il faut g�n�rer la DLL du code C++, ensuite l'appel� et l'utiliser au niveau du bouton C#.

    exemple du code C++:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    // interface.cpp : Defines the exported functions for the DLL application.
    //
     
    #include "stdafx.h"
     
     
    extern "C"             //No name mangling
    __declspec(dllexport)  //Tells the compiler to export the function
    int                    //Function return type     
    __cdecl                //Specifies calling convention, cdelc is default, 
    //so this can be omitted 
    test(int number){
    	return number + 1;
    }

    exemple code C#

    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    using System;
    using System.Drawing;
    using System.Collections;
    using System.ComponentModel;
    using System.Windows.Forms;
    using System.Data;
    using System.Runtime.InteropServices;
     
    namespace WindowsApplication6
    {
        /// <summary>
        /// Summary description for Form1.
        /// </summary>
        public class Form1 : System.Windows.Forms.Form
        {
            private System.Windows.Forms.Button button1;
     
            private System.Windows.Forms.TextBox textBox3;
            /// <summary>
            /// Required designer variable.
            /// </summary> 
            private System.ComponentModel.Container components = null;
     
            public Form1()
            {
                //
                // Required for Windows Form Designer support
                //
                InitializeComponent();
     
                //
                // TODO: Add any constructor code after 
                //       InitializeComponent call
            }
     
            /// <summary>
            /// Clean up any resources being used.
            /// </summary>
            protected override void Dispose(bool disposing)
            {
                if (disposing)
                {
                    if (components != null)
                    {
                        components.Dispose();
                    }
                }
                base.Dispose(disposing);
            }
     
            #region Windows Form Designer generated code
            /// <summary>
            /// Required method for Designer support - do not modify
            /// the contents of this method with the code editor.
            /// </summary>
            private void InitializeComponent()
            {
                this.button1 = new System.Windows.Forms.Button();
                this.textBox3 = new System.Windows.Forms.TextBox();
                this.SuspendLayout();
                // 
                // button1
                // 
                this.button1.Location = new System.Drawing.Point(64, 192);
                this.button1.Name = "button1";
                this.button1.Size = new System.Drawing.Size(144, 64);
                this.button1.TabIndex = 0;
                this.button1.Text = "call incrementation";
                this.button1.Click
                      += new System.EventHandler(this.button1_Click);
                // 
     
     
                // 
                // textBox3
                // 
                this.textBox3.Location = new System.Drawing.Point(248, 120);
                this.textBox3.Name = "textBox3";
                this.textBox3.Size = new System.Drawing.Size(112, 22);
                this.textBox3.TabIndex = 5;
                this.textBox3.Text = "";
                // 
                // Form1
                // 
                this.AutoScaleBaseSize = new System.Drawing.Size(6, 15);
                this.ClientSize = new System.Drawing.Size(576, 322);
                this.Controls.AddRange(new System.Windows.Forms.Control[] {
                            this.textBox3,
                            this.button1});
                this.Name = "Form1";
                this.Text = "Form1";
                this.ResumeLayout(false);
     
            }
            #endregion
     
            /// <summary>
            /// The main entry point for the application.
            /// </summary>
            [STAThread]
            static void Main()
            {
                Application.Run(new Form1());
            }
     
            #region My Code
            #region Dll Imports
            private const string DllFilePath = @"le chemin\interface.dll";
            [DllImport(DllFilePath, EntryPoint = "test",
            ExactSpelling = false, CallingConvention = CallingConvention.Cdecl)]
            static extern int test(int a);
            #endregion
            #region Button Click Events
            public static int Test(int number)
            {
                return test(number);
            }
            private void button1_Click(object sender, System.EventArgs e)
            {
                textBox3.Text = (Test(5)).ToString();
            }
            #endregion
            #endregion
        }
    }

  8. #8
    Membre averti
    Femme Profil pro
    �tudiant
    Inscrit en
    F�vrier 2014
    Messages
    37
    D�tails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Alg�rie

    Informations professionnelles :
    Activit� : �tudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : F�vrier 2014
    Messages : 37
    Par d�faut
    Maintenant j'ai un petit souci, c'est comment afficher une vid�o � partir d'une DLL C++ dans cette interface, j'ai r�ussi � afficher une seule image (une seule trame de cette vid�o )mais les autres trames non
    pouvez vous m'aider � afficher une vid�o ?

  9. #9
    Expert confirm�
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    F�vrier 2005
    Messages
    5 504
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 53
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : F�vrier 2005
    Messages : 5 504
    Par d�faut
    L'utilisation du C++/CLI est bien plus simple et flexible.
    C'est quoi le format de votre vid�o ?
    C'est quoi le contr�le .NET en charge d'afficher la vid�o ?
    http://stackoverflow.com/questions/3...a-winforms-app

  10. #10
    Membre averti
    Femme Profil pro
    �tudiant
    Inscrit en
    F�vrier 2014
    Messages
    37
    D�tails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Alg�rie

    Informations professionnelles :
    Activit� : �tudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : F�vrier 2014
    Messages : 37
    Par d�faut
    le format de la vid�o est AVI. (.avi)

  11. #11
    Expert confirm�
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    F�vrier 2005
    Messages
    5 504
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 53
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : F�vrier 2005
    Messages : 5 504
    Par d�faut
    https://fr.wikipedia.org/wiki/Audio_Video_Interleave
    C'est un non-format de vid�o.
    C'est juste un empaquetage.
    Pourquoi ne pas l'�crire sur le disque et pass� le chemin depuis l'interface C ?

  12. #12
    Expert confirm�

    Avatar de dragonjoker59
    Homme Profil pro
    Software Developer
    Inscrit en
    Juin 2005
    Messages
    2 033
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 43
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activit� : Software Developer
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 2 033
    Billets dans le blog
    12
    Par d�faut
    Je suis certain qu'en C# il existe les libs de lecture de vid�o, pourquoi passer par une lib C (ou C++) pour la lire ?
    Si vous ne trouvez plus rien, cherchez autre chose...

    Vous trouverez ici des tutoriels OpenGL moderne.
    Mon moteur 3D: Castor 3D, presque utilisable (venez participer, il y a de la place)!
    Un projet qui ne sert � rien, mais qu'il est joli (des fois) : ProceduralGenerator (G�n�ration proc�durale d'images, et post-processing).

  13. #13
    R�dacteur/Mod�rateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 153
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 38
    Localisation : Canada

    Informations professionnelles :
    Activit� : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 153
    Billets dans le blog
    4
    Par d�faut
    Surtout que �a n'a aucun sens de passer par le C++ pour �a. Ta vid�o c'est un �l�ment d'UI. Ton UI est en C#. Ta vid�o devrait �tre lue et affich�e en C#.
    Pensez � consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation r�seau ?
    Aucune aide via MP ne sera dispens�e. Merci d'utiliser les forums pr�vus � cet effet.

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. R�ponses: 2
    Dernier message: 29/03/2004, 18h29
  2. interface graphique utilisateur, que faut-il utiliser?
    Par Missvan dans le forum PostgreSQL
    R�ponses: 3
    Dernier message: 01/03/2004, 12h18
  3. Application multiplateforme avec interface graphique
    Par TNorth dans le forum Choisir un environnement de d�veloppement
    R�ponses: 2
    Dernier message: 31/01/2004, 18h55
  4. [Kylix] Interface graphique pour lognes de commande linux
    Par lecharcutierdelinux dans le forum EDI
    R�ponses: 6
    Dernier message: 29/08/2003, 10h20
  5. plugin interface graphique
    Par jocelyn dans le forum Eclipse Java
    R�ponses: 2
    Dernier message: 13/08/2003, 09h49

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