Button.onPress in Schleife halten

Teilzeitphilosoph

Erfahrenes Mitglied
Moinz.
Ich hab einen Button, der, wenn er gedrückt wird, einen Dauer-Trace machen soll. Also so was wie:

Code:
meinButton.onPress = function(){
    trace("Bla");
}

Und das soll halt so lange gehen, bis ich die Maus loslasse. Wie erwartet macht er es aber nur einmal. :rolleyes:
Hat jemand einen Anreiz für mich?

-bedank-
TZP
 
Moinz.
Ich hab einen Button, der, wenn er gedrückt wird, einen Dauer-Trace machen soll. Also so was wie:

Code:
meinButton.onPress = function(){
    trace("Bla");
}

Und das soll halt so lange gehen, bis ich die Maus loslasse. Wie erwartet macht er es aber nur einmal. :rolleyes:
Hat jemand einen Anreiz für mich?

-bedank-
TZP

btn.onPress = function()
{
myfunction(0)
}

btn.onRelease = function()
{
myfunction(1)
}

function myfunction(i){
if(i == 0) {
//deine schleife
} else {
//was auch immer
}


oder versteh ich die Frage falsch?
 
Zuletzt bearbeitet:
Ich befürchte ja. Das Problem hierbei ist, dass er es auch wieder nur 1x macht. Er soll es aber ständig machen, bis ich loslasse.
Anders erklärt: Der Button gehört zu einem Spiel, wo ich einen Lagerbestand nach oben/unten schrauben kann. Bei 5-10x geht ein Klick vielleicht noch aber wenn ich über 100 Dinger verschieben will, ist das nervig, wenn ich jedes Mal klicken muss.

TZP
 
Ich befürchte ja. Das Problem hierbei ist, dass er es auch wieder nur 1x macht. Er soll es aber ständig machen, bis ich loslasse.
Anders erklärt: Der Button gehört zu einem Spiel, wo ich einen Lagerbestand nach oben/unten schrauben kann. Bei 5-10x geht ein Klick vielleicht noch aber wenn ich über 100 Dinger verschieben will, ist das nervig, wenn ich jedes Mal klicken muss.

TZP

doch doch, das ist genau das was ich gepostet hab.
hier das komplette script für einen "hochzähl" button, allerdings noch optimierunsbedürftig (geschwindigkeit, was passiert wenn der user den mauszeiger vom button bewegt, etc.):

1. mach mal eine schaltfläche "btnUP"
2. mach eine neue ebene mit einem dynamischen textfeld das den wert der variable "number" nimmt.
3. mach eine neue ebene und copy paste den code:

AS2:
Code:
number = 0
btnUP.onPress = function()
{
countUPButton(0)
}
btnUP.onRelease = function()
{
countUPButton(1)
}
function countUPButton(i)
{
if(i == 0) {
intervalId = setInterval(this, "countUP", 2);
} else {
clearInterval(intervalId);
}
}
function countUP(i)
{
number++
}

Grüße, MClay
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück