0
こんにちは私はJavaを使用していますが、私はプログラムを停止しないが、例えば、私はそれを1に追加するメソッドに変数を追加するメソッドでは、 1秒待ってからもう一度1を追加しますが、delay()はプログラム全体を停止し、thread.sleepは処理プロジェクトでは機能しません。プロジェクトの処理を遅らせるには?
こんにちは私はJavaを使用していますが、私はプログラムを停止しないが、例えば、私はそれを1に追加するメソッドに変数を追加するメソッドでは、 1秒待ってからもう一度1を追加しますが、delay()はプログラム全体を停止し、thread.sleepは処理プロジェクトでは機能しません。プロジェクトの処理を遅らせるには?
既に独自のスレッドを使用している場合を除き、delay()
またはThread.sleep()
をProcessingに使用しないでください。デフォルトの処理スレッドでは使用しないでください(処理機能のいずれでも使用しないでください)。
代わりに、frameCount
変数またはmillis()
関数を使用して、イベントの開始時刻を取得し、現在の時刻と比較してイベントをいつ停止するかを確認します。
int clickTime = 0;
boolean showCircle = false;
void draw(){
background(64);
if(showCircle){
ellipse(width/2, height/2, width, height);
if(clickTime + 5*1000 < millis()){
showCircle = false;
}
}
}
void mousePressed(){
clickTime = millis();
showCircle = true;
}
サイドノート:
は、ここでユーザーがクリックするたびに5秒間円を示している例です、あなたが入力したときに、適切な句読点を使用してみてください。今すぐあなたの質問はちょうど長い実行文です。これは読みにくいものです。
処理はメインループで実行されています。開始時にタイムスタンプを取得するだけで済みます。その後、あなたが言ったように、毎秒1ずつ増やす必要があるカウンタの値が必要なときは、タイムスタンプをもう一度チェックし、何秒(=あなたのカウンタ)が経過したかを簡単に計算できます。 – domsson
私はどのように私はjavaに新しいですし、私はちょうど月曜日に始めた。 –
['Timestamp.getTime()'](https://docs.oracle.com/javase/7/docs/api/java/sql/Timestamp.html) - 処理の中で動作するかどうかはわかりませんが、私は推測しています結局、ProcessingはまさにJavaなのだろうか? – domsson