Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Input-Eingabe verkürzen

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Leader4



Anmeldungsdatum: 20.01.2005
Beiträge: 99
Wohnort: Leipzig

BeitragVerfasst am: 28.03.2005, 19:58    Titel: Input-Eingabe verkürzen Antworten mit Zitat

Tagchen. grinsen

Kann man eine Input-Eingabe, die bekanntlich 255 Zeichen aufnehmen kann, auf weniger Zeichen begrenzen? Ich möchte bei einer Datenbank eine Input-Eingabe in einem vorgegebenem Feld organisieren und möchte, dass der Benutzer nicht mehr als 26 Zeichen eingibt, weil sonst der Text über den Rest des Bildschirms weiterläuft. zwinkern
Der Umweg über das Einlesen von Strings via Inkey- bzw. Chr$-Befehl wäre mir bei diesen vielen Eingabefeldern zu umständlich. neutral
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Skilltronic



Anmeldungsdatum: 10.09.2004
Beiträge: 1148
Wohnort: Köln

BeitragVerfasst am: 28.03.2005, 20:10    Titel: Antworten mit Zitat

Hallo

Für sowas ist INPUT immer schlecht, weil das eigentliche Programm erst wieder weiterläft, wenn du die Eingabe mit ENTER beendest. Du könntest den Text höchstens nach der Eingabe abschneiden wenn er zu lang ist.

Gruss
Skilltronic
_________________
Elektronik und QB? www.skilltronics.de !
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
dreael
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 2529
Wohnort: Hofen SH (Schweiz)

BeitragVerfasst am: 28.03.2005, 20:22    Titel: Antworten mit Zitat

Zum Titelthema ein passender Artikel:

http://www.dreael.ch/Deutsch/BASIC-Knowhow-Ecke/BildschirmMasken.html

=> Dortiger INPUT-Ersatz genau studieren!
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Dusky_Joe



Anmeldungsdatum: 07.01.2005
Beiträge: 1007
Wohnort: Regensburg/Oberpfalz

BeitragVerfasst am: 28.03.2005, 20:31    Titel: Antworten mit Zitat

Codeauszug aus einem von meinen Progs:

(SFont ist eine Andere SUB, ein PRINT-Ersatz für Grafikmodi)
du müsstest die SFONT-Anweisung dabei durch PRINT, LOCATE und COLOR ersetzen.

Interessant wäre für dich eigentlich erst der Teil nach ab dem DO.
....
Code:

sub IFont (Text AS String, x as integer, y as integer, fore as integer, back as integer, Ans as string, maxlen as integer)
   'Prompt ausgeben
   'Show Prompt
   SFont Text, x, y, fore, back
   
   'Verschiebe Cursor ans Ende des Promps + die Breite eines Leerzeichens
   'Move Cursor to the end of the prompt + the width of a Space
   For i = 1 To Len(Text)
      x = x + Adrs(Asc(Mid$(Text, i, 1)),2)
   next
   x = x + Adrs(32, 2)
   
   do
      k$ = inkey$
      select case k$
      case chr$(0)   'Wegen CASE ELSE aufgeführt; erzeugen kein Ereignis
      case chr$(13)  'They have to be here because of CASE ELSE; the don't cause an event.
         
      case chr$(8)
         if len(Ans) then
            Ans = left$(Ans, Len(Ans) - 1)
         else
            beep
         end if
               
      case else
         if len(Ans) < maxlen then Ans = Ans + k$
      end select
     
      SFont Ans, x, y, fore, back
   loop until k$=chr$(13)
   
end sub

_________________
fully biological degradable

Once, the big wave arrives, you've got two ways, you can go:
Either, you ride it, or you don't do.
But, if you don't ride, you'll never know wether you'd have gone wet.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
jb



Anmeldungsdatum: 14.01.2005
Beiträge: 2010

BeitragVerfasst am: 28.03.2005, 20:38    Titel: Antworten mit Zitat

Das findet man in der MonsterFAQ
http://www.antonis.de/faq/index.htm
unter Tastatureingabe.

jb
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
stef



Anmeldungsdatum: 13.01.2005
Beiträge: 102

BeitragVerfasst am: 28.03.2005, 22:12    Titel: Re: Input-Eingabe verkürzen Antworten mit Zitat

Leader4 hat Folgendes geschrieben:
Der Umweg über das Einlesen von Strings via Inkey- bzw. Chr$-Befehl wäre mir bei diesen vielen Eingabefeldern zu umständlich. neutral

Für so was sind doch Funktionen wie geschaffen. etwa so:
DECLARE FUNCTION Eingabe$ (Eingabelaenge AS INTEGER)

Text$ = Eingabe$(26)

Die Funktion muß man nur einmal schreiben und kann sie dann immer wieder hernehmen wenn man so etwas braucht.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz