Abkopierbares Textfeld?

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

ZioX

Betreff: Abkopierbares Textfeld?

BeitragSo, Mai 20, 2007 18:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo!

Ist es möglich, das eine Ausgabe in einem eigenen Textfeld erfolgt, wo man einfach den Text auswählen kann?
Ansonsten sind die Ausgaben ja so gemacht, damit man sie nich markieren kann.
Mir ist klar das es gehen würde den Text in eine externe txt zu speichern, das ist aber doch etwas zu umständlich für das, wozu ich es brauche.
Evtl gibt es eine eigene dll/lib dafür?

danke im vorraus
grüße
ziox.
 

ChristianK

BeitragSo, Mai 20, 2007 18:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Meinst du eine Ausgabe mit Print oder Text? Smile
Kommt darauf an, was du machen willst, aber ein Textfeld zu erstellen, ist vielleicht etwas umständlich.

Wenn du den Text kopieren willst, helfen dir vielleicht Clipboard-Funktionen: https://www.blitzforum.de/foru...php?t=1276

ZioX

BeitragSo, Mai 20, 2007 18:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo!

Vll habe ich mich etwas falsch ausgedrückt:
Ich moechte die Ausgabe(egal ob von Text, oder print, text ist aber bevorzugt) copy-fähig machen.
Also das man einfach mit gedrückter-Maustaste drüber fahren muss und markieren+copy kann..
So wie es auf jeder Homepage, txt datei, word datei usw. möglich ist.

Das mit dem Clipboard ist aber auch eine gute Variante, die obere ist trotzdem die bevorzugtere Razz

danke im vorraus

ziox.

Goodjee

BeitragSo, Mai 20, 2007 18:45
Antworten mit Zitat
Benutzer-Profile anzeigen
mit plitzplus kein problem, mit blitz3d nur über clipboard und selber coden
 

ChristianK

BeitragSo, Mai 20, 2007 19:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Die Clipboard-Befehle wirst du verwenden müssen. Um den zu kopierenden Text auszuwählen, kannst du zum Beispiel so was machen:

Code: [AUSKLAPPEN]
Graphics3D 800, 600, 32, 2
SetBuffer BackBuffer( )

ClsColor 200, 200, 200

Local txt$ = "Hier kann noch mehr Text eingegeben werden!"
Local cursor
Local marked_min, marked_max

While Not KeyHit( 1 )

   Cls

   key = GetKey( )
   
   If Not KeyDown( 29 )
   
      If key <> 0 And key <> 8 And key <> 30 And key <> 31
         txt = txt + Chr( key )
      EndIf
      
      If key = 8
         txt = Mid( txt, 1, Len( txt ) - 1 )
      EndIf
      
      If KeyHit( 203 ) cursor = cursor - 1
      If KeyHit( 205 ) cursor = cursor + 1
      
   EndIf
   
   If KeyHit( 29 )
      marked_min = cursor
      marked_max = cursor
   EndIf
   
   If KeyDown( 29 )   
      If KeyHit( 203 ) marked_max = marked_max - 1
      If KeyHit( 205 ) marked_max = marked_max + 1
   EndIf
   
   Color 100, 100, 100
   Rect 100 + StringWidth( Mid( txt, 1, marked_min ) ), 100, StringWidth( Mid( txt, 1, marked_max ) ) - StringWidth( Mid( txt, 1, marked_min ) ), 12
   
   Color 255, 255, 255
   Rect 100 + StringWidth( Mid( txt, 1, cursor ) ), 100, 1, 12
   
   Color 0, 0, 0
   Text 100, 100, txt
   
   Flip

Wend

End

Mit Strg und den Pfeiltasten kannst du den Text auswählen.
Ist sehr simpel, aber an sich funktioniert's. Wink
  • Zuletzt bearbeitet von ChristianK am Mo, Mai 21, 2007 13:12, insgesamt einmal bearbeitet

ZioX

BeitragSo, Mai 20, 2007 19:18
Antworten mit Zitat
Benutzer-Profile anzeigen
hmmm
Aber da legts jetzt nur nen Grauen Bereich drüber, sprich ausgewählt ist im Endeffekt nix oder?
Sonst koennte man ja mit ner einfachen Funktion die bei STRG + C die clipboard funktion auslöst das copy auslösen.
wird aber so nicht gehen?

Goodjee

BeitragSo, Mai 20, 2007 19:32
Antworten mit Zitat
Benutzer-Profile anzeigen
ein bischen denken musst du schon noch selber...
und versuch doch bitte wenigsten ansatzweise, solche sätze zu vormulieren, die man beim ersten lesen versteht...

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group