ToolBar, DateTime, Process Probleme

der_Brain

Grünschnabel
bitte dringend um hilfe!

hallo ich habe so einige probs.
ich wäre jedem sehr verbunden wenn er sich diese mal anschaut und wenigstens zu einem mir einen tipp geben könnte wie ich da weiter komme!
dank schon mal im voraus an alle die sich die mühe geben!

hier mein code zum erstellen einer toolbar:

Code:
		// Create ImageList.

		Bitmap bm = new Bitmap(GetType(), 
			"SimpleToolBar.StandardButtons.bmp");

		ImageList imglst = new ImageList();
		imglst.Images.AddStrip(bm);
		imglst.TransparentColor = Color.Cyan;

		// Create ToolBar.

		ToolBar tbar = new ToolBar();
		tbar.Parent = this;
		tbar.ImageList = imglst;
		tbar.ShowToolTips = true;

		// Create ToolBarButtons.
		string[] astr = {"New", "Open", "Save", "Print", 
						                            "Cut", "Copy", "Paste" };

		for (int i = 0; i < 7; i++)
		{
			ToolBarButton tbarbtn = new ToolBarButton();
			tbarbtn.ImageIndex = i;
			tbarbtn.ToolTipText = astr[i];

			tbar.Buttons.Add(tbarbtn);
		}

dabei tritt immer eine exception beim ausführen des programmes auf das mich darauf hinweist, das die bitmaps nich vorhanden sind oder er sie nicht richtig einbinden kann.
woran kann das liegen?


mein zweites prob:
ich versuche einer datei uhrzeit und datum als dateinamen zu geben
dabei kommt aber wieder bei der ausführung eine exception die sagt das der name nicht korrekt ist

Code:
private void buttonDateTimeEinfügenOnClick(object sender, EventArgs ea)
	{
		// Datum und Zeit einer Variablen zuweisen
		DateTime  datetime = System.DateTime.Now;
			
		// in Date- und TimeString umwandeln und jeweils 
		// einer Variablen zuweisen
		string date = datetime.ToShortDateString();
		string time = datetime.ToShortTimeString();

		// um ein gültiges Dateiformat zu erschaffen müssen alle Punkte aus der 
		// Uhrzeit und dem Datum entfernt werden
		string[] strdate= date.ToString().Split(new Char[] {'.'});
	
		string[] strtime= time.ToString().Split(new Char[] {':'});
			
//		// beide Variablen für Datum und Zeit an die TextBox übergeben
//		//txtbox.Text= strdate[1]+ strdate[2]+ strdate[3]+ "-"+ strtime[1]+ strtime[2];
		txtbox.Text= "Datum; // hier soll natürlich der ausdruck eine zeil höher verwandt werden
	}



mein drittes prob:
ich versuche einen prozess mit einem hotkey- abbruch zu beenden, aber die sache ist das die form visible=false ist.
wie kann ich nun dieser form den hinweis geben das ein bestimmtes tastaturereigniss eingetreten ist?
weil eigentlich reagiert eine form ja nur auf tastatureingaben wenn sie den focus hat...

nächstes problem:
ich schreibe eine log-Datei
um diese korrekt auszuwerten muss in dieser aber genau die zeit des events eingetragen werden
ich brauch also mehr als nur die sekunden, ich brauch auch die zehntel und hundertstel, ToLongTimeString() liefert mir aber nur bis zur sekunde...
Code:
sw.WriteLine("MOUSE;"+ DateTime.Now.ToLongTimeString()+ ";"+ arrlstPts[i]+ 
							";"+ "MOUSEMOVE");

mein größtes prob:
die log-Datei sieht ungefähr so aus:

...
LOG_BEGIN: 10.04.2004, 14:27:38

MOUSE;14:27:38;{X=558,Y=564};MOUSEMOVE
MOUSE;14:27:38;{X=558,Y=564};MOUSEMOVE
MOUSE;14:27:38;{X=724,Y=522};MOUSEMOVE
...
MOUSE;14:27:40;{X=326,Y=423};MOUSEMOVE
MOUSE;14:27:40;{X=339,Y=399};MOUSEMOVE

LOG_END: 10.04.2004, 14:27:40

LOG_TIMESPAN: 00:00:01.9728368

wie komm ich nun wieder an die CorsurPosition ran die da drin steht?
ich hab das ja schon versucht die zeilen zu zerschneiden und irgendwie in eine pointstruktur zu konvertieren, aber irgendwie kam ich da nicht auf einen grünen zweig
vielleicht fällt da ja jemand spontan ein code-schnipsel ein

mfg
der Brain
 
Hallo.

Erstens: "bitte hilfe wichtig" und dergleichen sind als Topic ungeeignet. Denk über einen kleinen Satz nach der das/die Problem(e) schonmal ein wenig beschreibt.
Zweitens: Groß-/Kleinschreibung beachten.

Zur Toolbar:
Hast du die Bilddatei in dein Assembly eingebettet mit diesem Namen?
Bei VisualStudio fügst du das Bild zu den andern Dateien hinzu und wechselst von "Inhalt" auf "eingebettete Ressource" beim Typ in den Eigenschaften.
VisualStudio hängt beim Namen noch den StandardNamespace vorne dran. Mit diesem vollen Namen musst dann auf die Datei zugreifen.
Wenn du von Hand kompilierst gib die Datei mit dem /res Parameter an.
/res:Dateiname[,Bezeichner]
Bezeichner ist optional, mit diesem müsstest dann die Ressource aufrufen.

So, zum Datum.
Der ToString Methode der DateTime Klasse kannst du eine Formatierung übergeben!
In der MSDN kannst du nachlesen mit welchen Zeichen du was für einen Wert holst.
DateTime.ToString Method (String)
Damit ersparst du dir das splitten und zusammensetzen. Das kannst du gleich beim vollen Datum anwenden und musst auch vorher nicht aufteilen In Datum und Uhrzeit.

Problem 3:
Keyboard Hooks, danach solltest Googeln. Damit benutzt du Teile der WinAPI um benachrichtigungen über Keyboardereignisse zu bekommen.
RE: Keyboard hook in C# @ microsoft.public.dotnet.general
Global System Hooks in .NET

Problem 4:
Die DateTime Klasse hat die Eigenschaft Milliseconds, greif doch auf die zu.
Ansonsten:
Ticks
The value of this property is the number of 100-nanosecond intervals that have elapsed since 12:00 A.M., January 1, 0001.


Mfg
Alex
 

Neue Beiträge

Zurück