J'ai commencé à programmer une application gui personnalisée. Mais j'ai besoin de savoir comment connecter le bouton avec une méthode.
Par exemple j'ai:
Comment connecter des boutons avec des méthodes qui seront appelées cliquer
class Button
{
private:
string Text;
/*etc*/
public:
string GetLabel();
void SetLabel(string label);
void Connect(/*method name as param*/)
{
//TODO -this is that thing i need help here
/*this is method for connecting button with method, which will be
called on click, which im asking for help*/
}
};
class Window
{
private:
int sizeX,sizeY;
public:
void Put(Button * button,int _hpos,int _vpos);
void Show();
/*etc */
};
class MyWindow : public Window
{
public:
MyWindow()
{
InitializeComponents();
}
void Run()
{
this -> Put(btn1,10,10); //put button in window at position 10,10
this -> Show();
}
private:
Button * btn1;
void InitializeComponents()
{
btn1 = new Button();
btn1 -> Connect(on_btn1_click); //select which method will be called when user click this button, which I dont know how to do so pls help
}
void on_btn1_click() //this method is called when user click the button
{
//do something if user clicked btn1
}
};
int main()
{
MyWindow * win1 = new MyWindow();
win1 -> Run();
return 0;
}
Donc, il y a la méthode privée à l'intérieur MyWindow classe qui sera appelée lorsque l'utilisateur clique sur le bouton (btn1). Method Connect() sélectionne la méthode qui sera utilisée pour l'appel lorsque l'utilisateur clique sur le bouton.
Quelle structure graphique utilisez-vous? Quelle plate-forme ou quel système d'exploitation utilisez-vous? –
Ceci est basé sur des malédictions. Je voulais rendre les malédictions plus utilisables, donc j'essayais de créer un cadre oop. – T0maas