AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Ranking Komponente gesucht, bzw. wie kann man sowas umsetzen?
Thema durchsuchen
Ansicht
Themen-Optionen

Ranking Komponente gesucht, bzw. wie kann man sowas umsetzen?

Ein Thema von juergen · begonnen am 10. Aug 2013 · letzter Beitrag vom 11. Aug 2013
Antwort Antwort
Benutzerbild von juergen
juergen

Registriert seit: 10. Jan 2005
Ort: Bönen
1.176 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: Ranking Komponente gesucht, bzw. wie kann man sowas umsetzen?

  Alt 11. Aug 2013, 11:10
Hallo zusammen,

danke für eure Hinweise.
Ich hatte gestern den Ansatz von Furtbichler weiter verfolgt.
Damit bin ich flexibel was die Optik der Sterne betrifft und dem Hintergrund.

Aber das Ganze ist dann doch nicht ganz so einfach. Ich benötige auch halbe Sterne, da üblicherweise in "halben Sternen-Schritten" bewertet wird. Weiterhin muss es auch möglich sein die Bewertung wieder komplett zurück zu setzen (keine Sterne).
Ich bin da schon einiges weiter gekommen aber noch nicht ganz fertig.
Meine Grundidee dabei ist, dass der Bereich von einem Stern in 3 "Mausklick-Zonen" aufgeteilt wird. Wenn man im linken 1/3 klickt wird der "leere" Stern gesetzt, im 2/3-Bereich eines Sternes wird der halbe Stern gesetzt und im letzten Drittel der volle Stern.
Weiterhin muss im MouseMove-Event am Mauszeiger der Wert als "Vorschau" angezeigt werden, ohne die Bewertung zu setzen, das erfolgt erst nach einem Klick.
Leider habe ich heute und kommende Woche keine Zeit und muss dann später weiter machen.

Nochmals mein Dank an alle und noch einen schönen Sonntag!
Jürgen
Indes sie forschten, röntgten, filmten, funkten, entstand von selbst die köstlichste Erfindung: der Umweg als die kürzeste Verbindung zwischen zwei Punkten. (Erich Kästner)
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#2

AW: Ranking Komponente gesucht, bzw. wie kann man sowas umsetzen?

  Alt 11. Aug 2013, 11:41
Du könntest ein TcxProgressbar mit Properties.BarStyle = cxBsBitmap einsetzen. Dann die MouseEvents auswerten und das ganze als Trackbar mißbrauchen.
cxProgressBar1.Position := trunc(X*(cxProgressBar1.Properties.Max-cxProgressBar1.Properties.Min)/cxProgressBar1.Width);
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#3

AW: Ranking Komponente gesucht, bzw. wie kann man sowas umsetzen?

  Alt 11. Aug 2013, 11:58
Aber das Ganze ist dann doch nicht ganz so einfach. Ich benötige auch halbe Sterne, da üblicherweise in "halben Sternen-Schritten" bewertet wird.
Im Beispiel wird die Komponente in 5 Teile geteilt.

Teile sie in 10 Teile. Dann ergibt das einen 'Sternindex von 1..10'. Dann zeichnest Du 'Sternindex/2' ganze Sterne und wenn 'Sternindex' ungerade ist, noch einen halben Stern hinten dran.

Um die Bewertung zurückzusetzen, kannst Du
- einen Button 'Zurücksetzen' dazupacken,
oder
- den Bereich in 11 Teile zeilen (dann ergibt das einen Sternenindex von 1..11'). Du ziehst eins ab, wenn das Ergebnis 0 ist, dann zeichnest Du keinen Stern. Die Komponente ist dann etwas breiter, weil links ein kleines (halbe Sternbreite) Feld leer ist, in das man hineinklickt, um 0 Sterne zu vergeben.
oder
- prüfst einfach, ob Mouse.X < 5 (pixel) ist. Wenn ja, sind es 0 sterne, ansonsten wie gehabt. Man vergibt also 0 Sterne, wenn man auf den ersten Stern links klickt.
  Mit Zitat antworten Zitat
Benutzerbild von juergen
juergen

Registriert seit: 10. Jan 2005
Ort: Bönen
1.176 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Ranking Komponente gesucht, bzw. wie kann man sowas umsetzen?

  Alt 11. Aug 2013, 16:34
@Union,
diese Art der Umsetzung ist ein ganz neuer Ansatz, da ich die "DevExpress-Dinger" auch habe! Die cxBsBitmap-Propertie habe ich noch nie genutzt, bzw. kannte diese auch gar nicht. Werde ich mir anschauen sobald ich wieder etwas Zeit habe. Vielen Dank.

@Furtbichler,
dein Ansatz ist ähnlich dem, was ich schon angefangen habe. Nochmals vielen Dank!


Cool dass ich 2 völlig verschiedene schöne Lösungsansätze habe.

Gruss
Jürgen
Jürgen
  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 21:26 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz