AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Probleme bei Eingabe mit Inputbox

Offene Frage von "daniel_0"
Ein Thema von daniel_0 · begonnen am 19. Feb 2007 · letzter Beitrag vom 19. Feb 2007
Antwort Antwort
Seite 1 von 2  1 2      
daniel_0

Registriert seit: 13. Feb 2007
12 Beiträge
 
#1

Probleme bei Eingabe mit Inputbox

  Alt 19. Feb 2007, 12:56
Hi Leute!

ich hab ein kleines, aber irgendiwe sehr ärgerliches Problem mit der Inputbox und komme einfach nicht weiter.

Ich möchte einfach einen String mit wenigen Zeichen über eine Inputbox einlesen. Die Variable ist global deklariert! Die Inputbox wird beim Laden einer Form aufgerufen.
Sobald ich das Programm starte, erscheint die Box mit dem im Sourcecode vordefinierten Default Text.
klicke ich jetzt allerdings in das Textfeld der Inputbox, hängt sich das Programm auf. Die Systemauslastung des Prozesses steigt auf 100% und das Programm lässt sich nur noch über den Task Manager beenden.
Lege ich die Variable statisch, also direkt über eine Zuweisung aus dem Sourcecode fest, funktioniert alles wunderbar.

Ich werde euch den Sourcecode mal eben unter mein Problem stellen, vielleicht hat ja jemand von euch eine Idee, ich schätze dass die Lösung ganz einfach ist nur dass ich einfach nicht drauf komme.

Delphi-Quellcode:
procedure TMainForm.FormCreate(Sender: TObject);
begin
  path:=Inputbox('Eingabe','Gib hier den Pfad an:','C:\');
  if fileexists(path + 'muh.txt') then
    stdMemo.Lines.LoadFromFile(path + 'Session.txt');
end;
Besten Dank!
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Probleme bei Eingabe mit Inputbox

  Alt 19. Feb 2007, 12:58
Hallo,

das Problem liegt höchstwahrscheinlich nicht an diesem Code. Da kann ich keine Fehler entdecken. Versuche mal, das ganze ins OnFormShow zu verschieben.
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
daniel_0

Registriert seit: 13. Feb 2007
12 Beiträge
 
#3

Re: Probleme bei Eingabe mit Inputbox

  Alt 19. Feb 2007, 13:08
die Form ist zum einen unsichtbar, un zum zweiten hab ich nur formopen und formclose zu verfügung

aber ich verstehe immer noch nicht wieso diese inputbox sich aufhängt, ich habe sie in einem andere programm unter den gleichen voraussetzungen getestet un da geht alles
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.337 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Probleme bei Eingabe mit Inputbox

  Alt 19. Feb 2007, 13:16
Hallo Daniel,

versuch mal:
Delphi-Quellcode:
procedure TMainForm.FormCreate(Sender: TObject);
begin
  path:=Inputbox('Eingabe','Gib hier den Pfad an:','C:\');
  if fileexists(path + 'muh.txt') then
    sysutils.beep;
// stdMemo.Lines.LoadFromFile(path + 'Session.txt');
end;
Es könnte evtl. sein. dass der Zugrif auf das Memo Probleme macht, da das übergeordnete Fenster nocgh nicht sichbar ist. Allerdings müsste dann eigentlich eine Fehlermeldung erscheinen!?

Alternativ setzt Du den beep hinter den Memoaufruf, dann siehst (hörst Du, ob das Programm bis dort hin funtioniert.

Stahli
  Mit Zitat antworten Zitat
daniel_0

Registriert seit: 13. Feb 2007
12 Beiträge
 
#5

Re: Probleme bei Eingabe mit Inputbox

  Alt 19. Feb 2007, 13:54
keine chance, also ich habe ja einen vordefinierten wert in der inputbox angegeben, wenn cih einfach nur auf ok drücke übernimmt er den wert, nur sobald ich einen eingabe machen will hängt er sich auf? WTF^^

ich glaube dafür gibt es keine lösung oder?
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#6

Re: Probleme bei Eingabe mit Inputbox

  Alt 19. Feb 2007, 13:59
Was passiert, wenn du keinen Vorgabewert übergibst? (Einfach '' übergeben)
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#7

Re: Probleme bei Eingabe mit Inputbox

  Alt 19. Feb 2007, 14:00
Hallo,

die Ereignisbehandlung für OnCreate() der Form sollte keine Interaktion mit dem Benutzer enthalten. Das ist doch auch gar nicht nötig. Die VCL sieht dieses Ereignis vor, damit der Entwickler zu diesem Zeitpunkt Objekte instanzieren kann, die nicht durch das VCL-Streaming instanziert werden können. Aber auch wenn man das Konzept ignoriert: Der Aufruf von IntputBox() alleine kann nicht das im Betrag #1 beschriebene Verhalten begründen. Das kann man auch sehr einfach selbst ausprobieren, indem man eine leere Form hernimmt und in deren OnCreate() InputBox() aufruft.

Freundliche Grüße
  Mit Zitat antworten Zitat
daniel_0

Registriert seit: 13. Feb 2007
12 Beiträge
 
#8

Re: Probleme bei Eingabe mit Inputbox

  Alt 19. Feb 2007, 14:02
danke für den hinweis marabu, nur leider habe ich in meinem programm keine andere möglichkeit eine eingabe zu tätigen
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#9

Re: Probleme bei Eingabe mit Inputbox

  Alt 19. Feb 2007, 14:12
Zitat von daniel_0:
... nur leider habe ich in meinem programm keine andere möglichkeit eine eingabe zu tätigen
Das glaubt du nur; du hast dich nur in deinem Gedankengebäude festgefressen. Es gibt (fast) immer andere Möglichkeiten, vorallem beim Design der Benutzeroberfläche.
Zitat von stahli:
Es könnte evtl. sein. dass der Zugrif auf das Memo Probleme macht, da das übergeordnete Fenster nocgh nicht sichbar ist.
Da hat stahli sicher Recht! Das Memo ist noch nicht sichtbar; das Formular und auch das Memo haben noch kein Window-Handle. Also darf man StdMemo.lines noch nicht befüllen!!!
Selbst Exceptions können zu diesem frühen Zeitpunkt möglicherweise noch nicht richtig angezeigt werden.
Speichere die Datei nicht in StdMemo.lines sondern in einem selbst erzeugten TStringList Objekt, dann klappts.
Andreas
  Mit Zitat antworten Zitat
daniel_0

Registriert seit: 13. Feb 2007
12 Beiträge
 
#10

Re: Probleme bei Eingabe mit Inputbox

  Alt 19. Feb 2007, 14:19
also ich denke wir kommen hier net weiter ich kann euch aber leider nicht da komplette programm posten, sonst würdet ihr durch aus sehen dass keine andere stelle für eine eingabe möglich ist, außer vllt einen ausgelagerte function, naja mal sehen... aba trotzdem danke für eure anregungen
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:18 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz