[C++] Przyciski - Edycja Przypisywanej Funkcji
Ostatnio zmodyfikowano 2024-09-11 18:48
tBane Temat założony przez niniejszego użytkownika |
[C++] Przyciski - Edycja Przypisywanej Funkcji » 2024-09-11 17:49:59 Witam. Zdefiniowałem sobie przycisk i chciałbym przypisać do niego funkcję z dodatkową wartością czyli np. menuButtons[3]->func = setTerrainObjectsToPalette + {selectedBtn = menuButtons[3];};
class Button { public: sf::Vector2f position; buttonState state; std::function < void() > func; Button() { sprite = sf::Sprite(); state = buttonState::idle; func = { }; } };
menuButtons[ 3 ]->func = setTerrainObjectsToPalette; menuButtons[ 2 ]->func = setFloorsObjectsToPalette; menuButtons[ 1 ]->func = setFurnituresObjectsToPalette; menuButtons[ 0 ]->func = setWallsObjectsToPalette;
|
|
pekfos |
» 2024-09-11 18:38:34 Opakuj w lambdę. menuButtons[ 3 ]->func =[ co ś ] { setTerrainObjectsToPalette(); selectedBtn = menuButtons[ 3 ]; };
Nie wiem jaki jest kontekst, więc capture sobie będziesz musiał dostosować. |
|
tBane Temat założony przez niniejszego użytkownika |
» 2024-09-11 18:48:37 Ok dzięki :-) menuButtons[ 0 ]->func =[ ]() { selectedMenuButton = menuButtons[ 0 ]; selectedPaletteButton = nullptr; prefabToPaint = nullptr; setWallsObjectsToPalette(); };
|
|
« 1 » |