AGB  ·  Datenschutz  ·  Impressum  







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

Array oder Integer?

Ein Thema von rhodan · begonnen am 19. Mär 2014 · letzter Beitrag vom 20. Mär 2014
Antwort Antwort
nuclearping

Registriert seit: 7. Jun 2008
708 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#1

AW: Array oder Integer?

  Alt 19. Mär 2014, 21:52
Ah, jetzt hats bei mir auch Klick gemacht. Ich kannte die THotSpot-Komponente bis dato nicht.

den namen holen? ich dachte das hätte ich mit
Code:
if hotspot = hsi.HotSpotByName('Kanada') then
begin
schon getan?
Das was Sir Rufo meint ist, dass der Parameter HotSpot: THotSpot aus dem Funktionsaufruf den Hotspot zurückliefert, den du gerade markiert hast.

Was du aber mit hsi.HotSpotByName(...) machst, ist zu prüfen, ob der markierte Hotspot dem Hotspot entspricht, den du als "Kanada" ALS ERSTES in die Liste aufgenommen hast. Das erklärt auch, warum es nur funktioniert, wenn du auf den HotSpot 50 gehst.

Der Wert von Hotspot: THotSpot als Parameter hat in dem Fall aber sicher eine andere ID / Speicheradresse (Instanz) als hsi.HotSpotByName('Kanada') .

Du schreibst auch, dass du jeden Kanada-Hotspot die ID "Kanada" gegeben hast. Das ist, wie sich jetzt zeigt, schlecht. Du solltest jedem Hotspot eine eindeutige ID geben, zB Kanada1, Kanada2, ...

Das was du machen musst ist (in einer Schleife) zu prüfen, ob der Parameter Hotspot: THotSpot mit irgendeinem (in dem Fall) "KanadaX"-Hotspot übereinstimmt und dann kannst du die restlichen dazugehörigen hervorheben.
  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: Array oder Integer?

  Alt 19. Mär 2014, 21:59
Also ich kenn die Komponente auch nicht, aber das müsste so funktionieren:
Delphi-Quellcode:
procedure Tworldmapsource.hsiHotSpotEnter(Sender: TObject; HotSpot: THotSpot);
var
 i : Integer;
begin
  for I := 0 to hsi.Count { oder HotspotCount ??? } - 1 do
    hsi.HotSpots[i].HERVORHEBEN := hsi.HotSpots[i].Name { ? } = HotSpot.Name { ? } ;
end;
Ob die Eigenschaften (Count ,Name ) jetzt so heißen kann ich nicht sagen, aber so einfach geht das idR.

EDIT
Jetzt ist es ein Zweizeiler geworden
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
Benutzerbild von rhodan
rhodan

Registriert seit: 4. Okt 2005
Ort: Hamburg
150 Beiträge
 
Delphi 7 Personal
 
#3

AW: Array oder Integer?

  Alt 20. Mär 2014, 18:08
Also ich kenn die Komponente auch nicht, aber das müsste so funktionieren:
Delphi-Quellcode:
procedure Tworldmapsource.hsiHotSpotEnter(Sender: TObject; HotSpot: THotSpot);
var
 i : Integer;
begin
  for I := 0 to hsi.Count { oder HotspotCount ??? } - 1 do
    hsi.HotSpots[i].HERVORHEBEN := hsi.HotSpots[i].Name { ? } = HotSpot.Name { ? } ;
end;
Ob die Eigenschaften (Count ,Name ) jetzt so heißen kann ich nicht sagen, aber so einfach geht das idR.

EDIT
Jetzt ist es ein Zweizeiler geworden

...wie der code einfach mal funktioniert..kaum macht mans richtig
danke dir! wieder was dazugelernt!
und danke fürs bart fusselig reden

ps: jep das ist kanada und nicht simbabwe i know, sind noch keine texte dafür drin ;D
Angehängte Grafiken
Dateityp: jpg globemaster2.jpg (260,8 KB, 20x aufgerufen)

Geändert von rhodan (20. Mär 2014 um 18:11 Uhr)
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#4

AW: Array oder Integer?

  Alt 20. Mär 2014, 21:24
Nur interessehalber, wie funktioniert diese Komponente? Ich kenne ein Programm mit dem man Polygone zeichnen kann. Im Grunde sind sie dann nur Polygone und einfach nur ein Teil einer Grafik. Dann aber kann man sie mit einer Tabelle verknüpfen, und plötzlich kann man Regeln ausstellen. Polygone die bestimmte Regeln erfüllen (weil in Tabelle) kann man zählen, umfärben usw.

Was mich also interessiert ist, bietet die Komponente eigene Polygone an oder bietet sie nur die Möglichkeit sich an Polygone anzuheften?
  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: Array oder Integer?

  Alt 20. Mär 2014, 21:47
TMS THotspotImage
Da sollten fast alle Fragen beantworten -> Product Manual
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
Benutzerbild von rhodan
rhodan

Registriert seit: 4. Okt 2005
Ort: Hamburg
150 Beiträge
 
Delphi 7 Personal
 
#6

AW: Array oder Integer?

  Alt 20. Mär 2014, 23:11
im prinzip ist die komponente recht einfach gestrickt...

ich hab sie als teil des TMS component bundles 7.0 wo noch einige andere tolle dinge mit drin sind, kann ich nur empfehlen.

als erstes lädt man ein bild in das hotspotimage welches man benutzen möchte, dann macht man in delphi dort nen doppelklick drauf und es öffnet sich der hotspoteditor... nun kannst du entweder via rechteck, kreis oder "zauberstab" nen hotspot festlegen...zauberstab heisst hier wohin du klickst wird markiert anhand der grafischen grenzen..ich hab mir nun ne map gesucht wo schon viele länder vorher abgerenzt waren, das macht vieles einfacher diesbezüglich.

LEIDER kann man nicht wie in photoshop den zauberstab benutzen und dann per SHIFT oder so zu dem hotspot weitere teile hinzufügen die man anklickt..dann hätte mein problem nicht bestanden...insofern ist jeder klick ein eigener hotspot. dem kann man dann nach belieben ne eigene ID und namen zuweisen und festlegen wie genau sich der hotspot verhält wenn man mit der maus drüberfährt oder wenn man klickt ..ob er blinken soll oder nicht und wenn ja in welcher farbe etc...programmieren kann man dann eben was passiert wenn jemand drauf klickt oder mit der maus drüberfährt etc..man kann einfach individuell verschiedene bereiche im bild anklickbar machen und festlegen was in diesem fall passieren soll

lg

Geändert von rhodan (20. Mär 2014 um 23:18 Uhr)
  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 17:34 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