Hallo alle Miteinander,
es hat einige Zeit gedauert, aber jetzt habe ich ein kleines Problem.
Anbei ein kleiner Code:
Code:
#region Using directivesusing System;
using System.Collections.Generic;
using System.Text;
using Autodesk.AutoCAD.Interop;
using Autodesk.AutoCAD.ApplicationServices;
#endregion
namespace RSNNApplications
{
public class RSNNAppCommands
{
[CommandMethod("GK2", CommandFlags.Modal)]
public static void GK2Command()
{
AcadUtility utils = (AcadUtility)((AcadApplication)Autodesk.AutoCAD.ApplicationServices.Application.AcadApplication).ActiveDocument.Utility;
utils.InitializeUserInput(128, "Ja Nein");
utils.GetKeyword("Wollen Sie ein Objekt zeigen [Ja/Nein]: ");
string UserInput = utils.GetInput();
CommandLinePrompts.Message(string.Format("\rIhre eingabe war: {0}\n", UserInput));
}
}
}
Ich hoffe bei den
Using directives nichts vergessen zu haben.
Nun mal mein Problem:
Wenn ich diesen Befehl ausführe und die Frage mit einem RETURN beantworte (ESC geht nicht, ist ja nur ein Beispiel damit ihr das Problem nachvollziehen könnt), dann ist die Rückmeldung
"Ihre eingabe war: "
Wenn ich nun den Befehl noch einmal ausführe, und ein Schlüsselwort, z.B. Ja, eingebe, dann steht dort
"Ihre eingabe war: Ja"
Und jetzt das interessante, wenn ich nun den Befehl noch einmal ausführe und wieder einmal nur mit RETURN bestätige (also kein Schlüsselwort eingebe) kommt nun aber folgende Rückmeldung
"Ihre eingabe war: Ja"
Acad merkt sich also die letzte Eingabe. Wenn ich die gleichen Abfragen in VBA mache, merkt es sich die letzte Eingabe nicht.
Ist das bei euch nun auch so, wenn ja, wie kann ich das ändern?
------------------
Roland
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP