also ich hab da ein problem
ich installiere einen timer
der timer ist abhängig von der zeit die der user in zwei comboBox wählen kann
danach verberge ich die HauptForm und rufe LogFileWriter auf
in der void schreib ich eine datei in der alle zehntel sek. die mousekoordinaten geschrieben werden.
mein prob ist nun das ich die datei erst schließen will wenn der timer getickt hat.
aber ich bekomme es noch hin der void klar zu machen wann das ist...
hier mal mein tick-ereignis:
hab schon versucht hier eine variable vom typ bool einzustellen, aber das hat er dann in der void LogFileWriter nicht erkannt wenn sie auf true gesetzt wurde...
hier mal die void LogFileWriter:
und nun das tick-ereignis dazu:
hab jetzt hier eine neue datei erzeugt, was ich eigentlich nicht will, aber er erkannte sw (streamwriter) nicht mehr.
diese void ja auch so weit, aber ich möchte eben das sie so lange offen bleibt wie der user die zeit eingestellt hat, und wenn es geht wüde ich die cursor-position in die log datei schreiben und nich eine zusätzliche datei erzeugen müssen.
kann mir da jemand helfen?
ich installiere einen timer
Code:
case "1":
timer2 = new Timer();
timer2.Tick += new EventHandler(Timer2OnTick);
timer2.Interval = 60* 1000;
timer2.Start();
break;
danach verberge ich die HauptForm und rufe LogFileWriter auf
Code:
// HauptForm verbergen
this.Hide();
// void LogFileWriter aufrufen
LogFileWriter();
in der void schreib ich eine datei in der alle zehntel sek. die mousekoordinaten geschrieben werden.
mein prob ist nun das ich die datei erst schließen will wenn der timer getickt hat.
aber ich bekomme es noch hin der void klar zu machen wann das ist...
hier mal mein tick-ereignis:
Code:
private void Timer2OnTick(object obj, EventArgs ea)
{
timer2.Stop();
timer2.Tick -= new EventHandler(Timer2OnTick);
// anzeigen der HauptForm
this.Show();
}
hier mal die void LogFileWriter:
Code:
StreamWriter sw = new StreamWriter(Programmname+ ".txt");
//...
// wenn Mouse- Events geloggt werden sollen
if (chkbox1.Checked)
{
sw.WriteLine("Mouse_Events= true");
// Timer installieren bei dessen Tick-Event die MousePosition Eigenschaft
// in die log- Datei eingetragen werden
timer3 = new Timer();
timer3.Tick += new EventHandler(Timer3OnTick);
timer3.Interval = 100;
timer3.Start();
}
else
{
sw.WriteLine("Mouse_Events= false");
}
//...
sw.Close();
und nun das tick-ereignis dazu:
Code:
void Timer3OnTick(object obj, EventArgs ea)
{
mouseX= Cursor.Position.X;
mouseY= Cursor.Position.Y;
arrlstPts.Add(new Point(mouseX, mouseY));
StreamWriter sw2 = new StreamWriter("Points.txt");
sw2.AutoFlush = true;
for (int i= 0; i<arrlstPts.Count; i++)
{
sw2.WriteLine(arrlstPts[i]);
}
sw2.Close();
}
diese void ja auch so weit, aber ich möchte eben das sie so lange offen bleibt wie der user die zeit eingestellt hat, und wenn es geht wüde ich die cursor-position in die log datei schreiben und nich eine zusätzliche datei erzeugen müssen.
kann mir da jemand helfen?