本文整理汇总了C++中KeyboardEvent::pressed方法的典型用法代码示例。如果您正苦于以下问题:C++ KeyboardEvent::pressed方法的具体用法?C++ KeyboardEvent::pressed怎么用?C++ KeyboardEvent::pressed使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类KeyboardEvent
的用法示例。
在下文中一共展示了KeyboardEvent::pressed方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: keyboardListener
const void Editor::keyboardListener(KeyboardEvent event){
cout << (event.pressed() ? "press " : "release ") << event.key() << " " << event.first() << endl;
}
示例2: keyboardListener
const void AnimationTester::keyboardListener(KeyboardEvent& event){
if (event.isCancelled()){
return;
}
if (event.pressed()){
switch (event.key()){
case Keyboard::Escape:
window->close();
break;
case Keyboard::S:
if (manager->inputManager->isPressed(Keyboard::LControl)){
save();
}
break;
case Keyboard::F5:
load();
break;
case Keyboard::P:
if (d != NULL && event.first()){
if (repeat){
if (d->nextAnimation == "idle"){
d->nextAnimation = "animation";
}
else{
d->nextAnimation = "idle";
}
logger::info("State: " + d->nextAnimation);
}
else{
d->currentAnimation = "animation";
d->startTime = world->time();
}
}
break;
case Keyboard::R:
if (!(repeat = !repeat)){
d->nextAnimation = "idle";
}
logger::info("Repeating: " + string(repeat ? "yes" : "no"));
break;
case Keyboard::Add:
if (a != NULL){
if (manager->inputManager->isPressed(sf::Keyboard::Key::LShift)){
a->timing += sf::milliseconds(10);
}
else{
a->timing += sf::milliseconds(1);
}
if (a->timing < milliseconds(1)){
a->timing = milliseconds(1);
}
logger::info("Timing: " + to_string(a->timing.asMilliseconds()));
}
break;
case Keyboard::Subtract:
if (a != NULL){
if (manager->inputManager->isPressed(sf::Keyboard::Key::LShift)){
a->timing -= sf::milliseconds(10);
}
else{
a->timing -= sf::milliseconds(1);
}
if (a->timing < milliseconds(1)){
a->timing = milliseconds(1);
}
logger::info("Timing: " + to_string(a->timing.asMilliseconds()));
}
break;
}
}
}