Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Dringend !!! Stringgrid+benutzerdefinierte Cursorsteuerung (https://www.delphipraxis.net/24644-dringend-stringgrid-benutzerdefinierte-cursorsteuerung.html)

richard_boderich 23. Jun 2004 20:29


Dringend !!! Stringgrid+benutzerdefinierte Cursorsteuerung
 
Hallo Leute !

Also ich habe folgendes Problem. In einem Stringgrid kann ich mit den cursortasten
ja das gewünschte Feld wählen. Ich möchte die linke und die rechte cursortaste aber
so umfunktionieren, das wenn der cursor eine bestimmte spalte erreicht, bei einem
druck "Pfeil links/rechts" um 2 Spalten weiterspringt, und nicht nur um eine
wie standardmäßig!

Habe eine Routine über onKeypress event programmiert, die auch funzt, mit
jeder beliebigen Taste z. B. wenn ich a drücke (keycode 97) dann, springt der
cursor 2 Felder nach rechts. das haut alles hin, nur bei den verdammten
Cursortasten, geht es nicht, dort springt er immer nur 1 Feld weiter, wie's
halt standardmäßig ist. Ich denke es hängt damit zusammen, das TStringgrid
ja auch schon die Cursortasten abfragt, und somit meine Abfrage der Cursortasten ins
Lehre laüft, bzw. niedrigere Priorität hatt.
wäre toll, wenn jemand weiterhelfen koennte.

bis denne !

Keldorn 23. Jun 2004 20:34

Re: Dringend !!! Stringgrid+benutzerdefinierte Cursorsteueru
 
Hallo

Ich glaub nicht, das das dringend so nötig ist :roll:

mach das im onselectcell-ereignis. bei den onkeypress oder onkeydown merkst du dir die Taste, bei onselect fragst du die ab und wenn die aktuelle Spalte deine gewünschte ist, springst du 2 Spalten weiter.
Such mal im Forum nach Hier im Forum suchenonselectcell, da findest sich sicher auch code und Anregung.

Mfg Frank

edit:
http://www.delphipraxis.net/internal...358&highlight=

was soll das denn werden, wenn fertig ist??

Hansa 23. Jun 2004 20:36

Re: Dringend !!! Stringgrid+benutzerdefinierte Cursorsteueru
 
schaue dir das hier mal an:

http://www.delphipraxis.net/internal...unktionstasten

Aber ein Stringgrid reagiert tatsächlich etwas anders. Warum weiß ich noch nicht. 8) Da kümmere ich mich später drum. :mrgreen:

supermuckl 23. Jun 2004 20:40

Re: Dringend !!! Stringgrid+benutzerdefinierte Cursorsteueru
 
wieso gibts da 2 threads mit dem selben inhalt ? o_O

:wiejetzt:

richard_boderich 23. Jun 2004 21:08

Re: Dringend !!! Stringgrid+benutzerdefinierte Cursorsteueru
 
Hallo leute, erstmal danke für eure antworten, ihr habt hier wirklich einen
Suizid verhindert :)

also keldorn deine loesung gefaellt mir nich so, da ich zwei events abfragen muss.
ausserdem setzt dein code immer erst ein onselectcell voraus, das heist, das ich immer
kurz in der nichterwünschten zelle bin , und dann erst weiter springe. ist mir zu unsauber
und verursacht eventuell seiteneffekte, trotzdem danke :roll:

hallo hansa, deine antwort hat mir weitergeholfen, wenngleich ich mit den loesungen im forum
nicht so ganz zufrieden bin, warum kann ich manche tasten nur ueber onkeydown und manche nur
ueber onkeypress abfragen, da sollte borland meiner meinung mal nachbessern. :gruebel:

sorry wegen der zwei threads ich bin neu im forum und hab noch nich so den durchblick. :angle2:

Keldorn 23. Jun 2004 21:14

Re: Dringend !!! Stringgrid+benutzerdefinierte Cursorsteueru
 
Zitat:

Zitat von richard_boderich
also keldorn deine loesung gefaellt mir nich so, da ich zwei events abfragen muss.
ausserdem setzt dein code immer erst ein onselectcell voraus, das heist, das ich immer
kurz in der nichterwünschten zelle bin , und dann erst weiter springe. ist mir zu unsauber
und verursacht eventuell seiteneffekte, trotzdem danke :roll:

warum willst du eigentlich 2 Spalten weiterspringen? du willst nicht zufällig Spalten von der Eingabe sperren?

du kannst auch nochmal kurz hier schauen: http://www.delphipraxis.net/internal...642&highlight=

richard_boderich 23. Jun 2004 21:38

Re: Dringend !!! Stringgrid+benutzerdefinierte Cursorsteueru
 
ja, keldorn, das will ich, aber das is nich die hauptsache für mich, ich berechne aus der col und row position (x+y)
einen zahlenwert, der der index einen normalen arrays ist. es nutzt mir also nix nur die eingabe zu sperren, sondern
ich muss verhindern, das jemals ein col wert einer verbotenen zelle auftaucht, da sonst der index des array's nicht mehr stimmt

z. b. colcount := 10;
rowcount := 10;

sind 10x10 felder also ingesamt 100 moegliche indexwerte

col 5 , row 5 = indexwert 50

waere dankbar fuer irgentwelche loesungsvorschlaege; :cry:

richard_boderich 23. Jun 2004 22:34

Re: Dringend !!! Stringgrid+benutzerdefinierte Cursorsteueru
 
ok leute, habe das problem erkannt und dank hilfe von Leuselator geloest
also die cursortasten loesen nur ein onkeydown, aber kein onkeypress ereignis aus.
find ich ziemlich bescheiden von borland , aber na ja..

Achso in dieser hinsicht kann ich nur das Program von Leuselator empfehlen
ist wirklich klasse! THX dude!

Proggie


Alle Zeitangaben in WEZ +1. Es ist jetzt 14: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