Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo Kollegen,

Ich möchte in C++ eine GUI Anwendung Programmieren.

Die Funktion dieses Buttons, um den es hier geht, ist es nach einer Folge von Überprüfungen einen bestimmten Ordner zu öffnen.

Zur Zeit ist es so, dass egal was ich eingebe für die Variable "druckernummer", sich immer nur der erste Link also zu D:\~\pr-int_001-_030 öffnet.

Habe ich da einen wohlmöglich einen Fehler in der Syntax??:rolleyes:

			 if (druckernummer<=30 && maske == "pr-int_" && x==1 && druckernummer<=max)

		{

			system ("explorer.exe D:\\print_sync\\pr-int\\pr-int_001-_030");

			x=2;

			 };



			 if (druckernummer<=60 && maske == "pr-int_" && x==1 && druckernummer<=max)

		{

			system ("explorer.exe D:\\print_sync\\pr-int\\pr-int_031-_060");

			x=2;

		};



		 	 if (druckernummer<=90 && maske == "pr-int_" && x==1 && druckernummer<=max)

		{

			system ("explorer.exe D:\\print_sync\\pr-int\\pr-int_061-_090");

			x=2;

			 };

		 

Geschrieben

Ich vermisse ein else beim 2. und 3. if.

Dürfte in dem Zusammenhang zwar egal sein, aber probier mal folgendes Konstrukt (dürfte zumindest das Debuggen erleichtern):


	if(maske == "pr-int_" && x==1 && druckernummer<=max)

	{

		if (druckernummer<=30)

			system ("explorer.exe D:\\print_sync\\pr-int\\pr-int_001-_030");

		else if (druckernummer<=60)

			system ("explorer.exe D:\\print_sync\\pr-int\\pr-int_031-_060");

		else if (druckernummer<=90)

			system ("explorer.exe D:\\print_sync\\pr-int\\pr-int_061-_090");

		++x;

	}

Anm. d. Redaktion: system-Befehle müffeln. Lieber CreateProcess nehmen.

btw: Wenn maske ein const char[] (o.Ä.) ist, dann lieber strcmp verwenden.

Geschrieben

Ohne das else (ist nicht zwingend nötig) muss deine IF abfragenfolge andersrum sein.

Denn wenn die Druckernummer z.B. 10 ist, dann ist sie kleiner als 30 -> 1. If Block

Sie ist aber auch kleiner als 60 -> 2. If block

Und kleiner als 90 auch ergo: 3. Ifblock und dementsprechend wird der letzte ausgeführt und "überschreibt" die anderen wenn man so will

Geschrieben

Moin,

Habe ich da einen wohlmöglich einen Fehler in der Syntax??:rolleyes:

Wie sieht denn deine Bestimmung/umwandlung/was auch immer von druckernummer aus?

@BlackDragon83m: Er setzt aber X auf 2. ;)

Geschrieben
@BlackDragon83m: Er setzt aber X auf 2.

genau.. damit umgehe ich, dass sich alles öffnet

also jeder drucker ist am Ende mit einer bestimmten Druckernummer gekennzeichnet, welche der User in das Prog eintragen soll.

Geschrieben

hmm ... also die Maske und der Wert x werden unterschieden. Nur nicht die Druckernummer.

Kann es sein das, wenn ich den Wert druckernummer als Integer definiert habe und durch eine Textbox eine Zahl einlesen lasse, dass es anders Formatiert wird?? :S

Geschrieben
Kann es sein daß das a) C# ist und B) niemals nicht gehen wird? :beagolisc

Kann es sein das du keine Ahnung hast? XD

Das ist 100 Prozent C++ .. Da beides abgewandelt von C ist kann es sein, dass sich sowas ähnelt ;)

Geschrieben

Was willst du in einer GUI-Anwendung mit console input streams? :confused:

[Editerle]

Anmerkung zu Hexagon: Das sieht mehr nach C++.Net aus.

Geschrieben

Okay, Lösungsvorschlag 1:

  1. System::Object^ sender auf System.Windows.Controls.ContentControl casten, wenns geht.
  2. ContentStringFormat verwenden um an den String zukommen
  3. diesen per ToInt32 in einen Int umwandeln.

Besser? :beagolisc

Geschrieben

Nur mal so am Rande.. TextBox_TextChanged ist ein Eventhandler.

Wann findet ein TextChanged Event statt? Richtig, wenn man ein Zeichen eingibt. Numerisch, also 0 - 9.

Logisch das er nur den ersten Zweig nimmt, oder? ;)

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...