AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi StringGrid - Verknüpfung an Fokus; Fokus ausschalten
Thema durchsuchen
Ansicht
Themen-Optionen

StringGrid - Verknüpfung an Fokus; Fokus ausschalten

Ein Thema von Sturmrider · begonnen am 17. Nov 2006 · letzter Beitrag vom 19. Nov 2006
Antwort Antwort
Sturmrider

Registriert seit: 13. Mär 2006
30 Beiträge
 
#1

StringGrid - Verknüpfung an Fokus; Fokus ausschalten

  Alt 17. Nov 2006, 15:20
Hi
Ich habe da mal eine Frage an euch und hoffe ihr könnt mir weiterhelfen. Ich bin dabei ein Spiel in Delphi5 zu programmieren und stehe vor einem Problem.
Ich möchte gerne in die Zelle, auf welchem sich der Fokus befindet, ein Image legen. Bei springen des Fokus auf eine andere Zelle soll im der alten Zelle das Image gelöscht werden und in der neuen Zelle das Image angezeigt werden.

Und ganz nebenbei, gibt es eine Möglichkeit Zellen vom Fokus aus zu schließen? Das wäre dann nämlich mein zweites Problem Ich habe auch schon ein bischen gegoogelt und folgendes gefunden, jedoch funktioniert das leider nicht

Delphi-Quellcode:
const
  noSelection:TGridRect = (Left:-1; Top:-1; Right:-1; Bottom:-1);

procedure ...
//Fokus sollte entfernt werden
StringGrid.Selection := noSelection;
...
Gruß und THX
Sturmi
  Mit Zitat antworten Zitat
marabu

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

Re: StringGrid - Verknüpfung an Fokus; Fokus ausschalten

  Alt 17. Nov 2006, 18:37
Hallo André,

wenn du die Option goRangeSelect des StringGrids ausschaltest und im Event OnSelectCell() den Parameter CanSelect auf False setzt, dann kann die Zelle mit den Gridkoordinaten [ACol, ARow] nicht mehr ausgewählt werden.

Freundliche Grüße
  Mit Zitat antworten Zitat
Sturmrider

Registriert seit: 13. Mär 2006
30 Beiträge
 
#3

Re: StringGrid - Verknüpfung an Fokus; Fokus ausschalten

  Alt 18. Nov 2006, 17:14
Hi
Ich habe in der Delphi-Hilfe dank dir folgendes Beispiel gefunden:
Delphi-Quellcode:
procedure TForm1.StringGrid1SelectCell(Sender: TObject; Col, Row: Longint; var CanSelect: Boolean);

begin
  CanSelect := (StringGrid1.Cells[Col,Row]='')
end;
nur bekomme ich das leider irgendwie nicht so hin wie ich möchte. Man soll nicht mehr auf bestimmte Felder klicken können d.h. der Fokus nicht mehr darauf gehen können. (mit Fokus ist doch diese gestrichelte Linie gemeint oder?)
Könntest du mir vielleicht ein Beispiel dazu geben?
also goRangeSelect meine ich habe ich schon ausgestellt mit:
  Ausgabefeld.Options := Ausgabefeld.Options - [goRangeSelect]; THX ^^

Gruß André
  Mit Zitat antworten Zitat
marabu

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

Re: StringGrid - Verknüpfung an Fokus; Fokus ausschalten

  Alt 18. Nov 2006, 17:37
Hi,

woran erkenne ich denn, dass ein Feld gesperrt sein soll? In deiner Beispielzeile wird einfach jedes Feld gesperrt, welches nicht leer ist.

Freundliche Grüße
  Mit Zitat antworten Zitat
Sturmrider

Registriert seit: 13. Mär 2006
30 Beiträge
 
#5

Re: StringGrid - Verknüpfung an Fokus; Fokus ausschalten

  Alt 18. Nov 2006, 17:55
oh, dann habe ich den Begriff des Fokus wohl etwas falsch verstanden xx
ich meinte mit Feld auswählen diese gestrichelte Linie http://sturmrider.st.ohost.de/fokus.JPG
also, dass man diese Zellen nicht mit Hilfe der Pfeiltasten oder der Maus anwählen kann.
  Mit Zitat antworten Zitat
marabu

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

Re: StringGrid - Verknüpfung an Fokus; Fokus ausschalten

  Alt 18. Nov 2006, 18:40
Du hast das schon richtig verstanden. Deine Beispielzeile funktioniert ja auch bei mir - bei dir etwa nicht?
Angehängte Dateien
Dateityp: zip sg-block_614.zip (1,7 KB, 13x aufgerufen)
  Mit Zitat antworten Zitat
Sturmrider

Registriert seit: 13. Mär 2006
30 Beiträge
 
#7

Re: StringGrid - Verknüpfung an Fokus; Fokus ausschalten

  Alt 18. Nov 2006, 20:04
Du hast recht o_O funktioniert bei mir auch. Ich habe den Fokus am Ende der Prozedur wieder gesetzt <<"
tut mir leid
Danke für deine Hilfe ^^

Hast du auch noch eine Idee zu meinem ersten Problem? Ein Image in die Zelle zu setzten, auf welchem sich der Fokus befindet? Wie kann ich die Zell-Koordinaten bekommen, auf welchem sich der Fokus befindet?

Gruß André
  Mit Zitat antworten Zitat
marabu

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

Re: StringGrid - Verknüpfung an Fokus; Fokus ausschalten

  Alt 19. Nov 2006, 16:53
Hallo André,

um ein Bild auf einem Grid zu verschieben wirst du wohl DefaultDrawing ausschalten müssen, da sonst dein Bild immer vom internen painter übermalt wird.

Freundliche Grüße
Angehängte Dateien
Dateityp: zip sg-img_207.zip (4,2 KB, 10x aufgerufen)
  Mit Zitat antworten Zitat
Antwort Antwort


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 07:48 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