AGB  ·  Datenschutz  ·  Impressum  







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

Fokus auf mehrere Komponenten setzen

Ein Thema von Freyr77 · begonnen am 22. Jan 2016 · letzter Beitrag vom 2. Feb 2016
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    
Freyr77
(Gast)

n/a Beiträge
 
#1

Fokus auf mehrere Komponenten setzen

  Alt 22. Jan 2016, 10:18
Delphi-Version: 10 Seattle
Hallo miteinander.

Weil ich neu bin eine wichtige Info: Ich bin Azubi zum Anwendungsentwickler (gerade mit den ersten 4 Monaten durch, wenig Vorwissen). Wir arbeiten in unserer Firma ausschließlich mit Delphi 10 Seattle.

Nun programmiere ich gerade in Eigeninitiative einen Dartzähler, der das Schreiben auf Papier bei nicht elektronischen Dartscheiben erspraren soll, und auch selbstständig rechnet. Die Dartscheibe wurde von mir mit Buttons simuliert, also für jedes Feld das man treffen kann ein Button. Die Spielernamen sind in einem Label gespeichert, neben den Spielernamen habe ich jetzt mal einen Radiobutton gesetzt. Für jeden Spieler gibt es noch zwei zusätzliche Labels, einmal für den Punktestand und einmal für die Anzahl der gespielten Runden.

Mein Problem ist der Fokus, und zwar gänzlich. Mir ist bewusst, dass es irgendeine Prozedur in "OnSpielStartButtonClick" sein muss, aber wie schreibe ich die? Der Fokus soll am Anfang auf Spieler1 liegen, nach 3 Würfen soll ein Button gedrückt werden und dann der Fokus auf dem nächsten Spieler und so weiter ...

Wie setzte ich diesen Fokus, der alle Labels des jeweiligen Spielers umschließt, bis der Button gedrückt wird?

Ich wäre euch für Hilfe sehr dankbar. Wenn ihr etwas braucht (Bild der Form oder Code) poste ich das gerne.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: Fokus auf mehrere Komponenten setzen

  Alt 22. Jan 2016, 10:27
Crossposts bitte mit angeben
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.737 Beiträge
 
Delphi 6 Enterprise
 
#3

AW: Fokus auf mehrere Komponenten setzen

  Alt 22. Jan 2016, 10:30
Es können afaik nicht mehrere Controls den Fokus haben und ich kann mir auch nicht ganz Vorstellen, wie du das meinst bzw. was du erreichen willst. Deßhalb mal ein genereller Tipp: Versuche die Rundenzahl, die Spielstände der Spieler, die Anzahl und Namen der Spieler und auch wer gerade aktiver Spieler ist nicht in irgendwelchen Controls (Labeln/Edits usw.) der GUI zu merken sondern benutze dafür Variablen und da Delphi ja OOP ist wären auch passende Objekte/Klassen eine feine Sache.

Im allgemeinen spricht man davon, die GUI nicht für die Datenhaltung zu benutzen, sondern nur um eine Repräsentation der Daten (die du anderswo in einer Logik gespeichert hast) für den Nutzer anzuzeigen.

Mögliche Klassen/Objekte könnten sein:
- Spiel
- Spielrunde
- Spieler
- Scoreboard
- ???
Ralph
  Mit Zitat antworten Zitat
Freyr77
(Gast)

n/a Beiträge
 
#4

AW: Fokus auf mehrere Komponenten setzen

  Alt 22. Jan 2016, 10:51
Alles klar. Habe das hier gefragt weil die Aktivität der User höher ist.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#5

AW: Fokus auf mehrere Komponenten setzen

  Alt 22. Jan 2016, 10:56
Ich denke mal der Titel Fokus auf mehrere Komponenten setzen ist etwas unglücklich (zumal sowieso nur Controls den Fokus haben können - sind auch Komponenten aber nicht jede Komponente ist ein Control ).

Es geht wohl eher um die Visualisierung welcher Spieler gerade aktiv ist und die Spieler-Visualisierung selber umfasst ein paar Controls für den Spielernamen, Punktestand, etc.

Man kann sich für den Spieler ein Frame erstellen und dieses Frame eben x-mal auf der Form platzieren. Gibt man dem Frame jetzt noch eine Eigenschaft wie z.B. IsCurrent oder IsSelected dann kann man im Setter entsprechend reagieren.
Alles klar. Habe das hier gefragt weil die Aktivität der User höher ist.
Das "Warum" ist mir schon klar
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Freyr77
(Gast)

n/a Beiträge
 
#6

AW: Fokus auf mehrere Komponenten setzen

  Alt 22. Jan 2016, 11:54
Hier mal ein (etwas unsauber ausgeschnittenes) Bild, wie die Form Aussieht. Neben "lblspieler1" und "lblspieler2" befinden sich jeweils die Labels für den Punktestand und die gespielten Runden.

Ich hätte gerne, dass festgelegt wird welcher Spieler gerade spielt (über das Label, falls das geht) und bei Klick auf den z.b. 20er Button die Werte jeweils angepasst werden. Aber eben nur für den Spieler, der gerade dran ist.
Miniaturansicht angehängter Grafiken
beispielbild.jpg  

Geändert von Freyr77 (22. Jan 2016 um 12:44 Uhr)
  Mit Zitat antworten Zitat
Freyr77
(Gast)

n/a Beiträge
 
#7

AW: Fokus auf mehrere Komponenten setzen

  Alt 22. Jan 2016, 11:58
Ich denke mal der Titel Fokus auf mehrere Komponenten setzen ist etwas unglücklich (zumal sowieso nur Controls den Fokus haben können - sind auch Komponenten aber nicht jede Komponente ist ein Control ).

Es geht wohl eher um die Visualisierung welcher Spieler gerade aktiv ist und die Spieler-Visualisierung selber umfasst ein paar Controls für den Spielernamen, Punktestand, etc.

Man kann sich für den Spieler ein Frame erstellen und dieses Frame eben x-mal auf der Form platzieren. Gibt man dem Frame jetzt noch eine Eigenschaft wie z.B. IsCurrent oder IsSelected dann kann man im Setter entsprechend reagieren.
Alles klar. Habe das hier gefragt weil die Aktivität der User höher ist.
Das "Warum" ist mir schon klar
Wenn ich den Frame erstellt habe, und ihn bei OnCreate erzeugen lasse, wie spreche ich hier die Komponenten von dem Frame an?
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.070 Beiträge
 
Delphi 10.4 Sydney
 
#8

AW: Fokus auf mehrere Komponenten setzen

  Alt 22. Jan 2016, 12:00
Mein Werbeblocker meldet bilder-upload.eu als Malware-Schleuder.
Bitte hänge den Screenshot einfach hier am Beitrag an.
Siehe Button "Anhänge verwalten" fünf Zentimeter und den "Antworten"-Button.
  Mit Zitat antworten Zitat
Benutzerbild von frankyboy1974
frankyboy1974

Registriert seit: 7. Apr 2015
Ort: SH
169 Beiträge
 
Delphi XE7 Professional
 
#9

AW: Fokus auf mehrere Komponenten setzen

  Alt 22. Jan 2016, 12:17
hallo,

um hervorzuheben welcher Speiler gerade an der Reihe ist, würde ich dessen Label's einfach Fett und ggf. mit einer größeren Schriftart darstellen.

mfg
Java ist auch eine Insel.
Ist Delphi von Oracle?
In meiner Buchstabensuppen fehlt das C++!
  Mit Zitat antworten Zitat
Freyr77
(Gast)

n/a Beiträge
 
#10

AW: Fokus auf mehrere Komponenten setzen

  Alt 22. Jan 2016, 12:45
Mein Werbeblocker meldet bilder-upload.eu als Malware-Schleuder.
Bitte hänge den Screenshot einfach hier am Beitrag an.
Siehe Button "Anhänge verwalten" fünf Zentimeter und den "Antworten"-Button.
- Beitrag editiert!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    


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 00:17 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