Chapu, ale komponenty FMX jsou od toho aby konkretni funkcionalitu nejak sjednotily, coz v tomto pripade nelze.
A proč by prostě tray icon pro FMX nemohla na systémech, které ji nepodporují, nic nedělat a na ostatních systémech být dostupná?
Mohla, ale...Jak bys ocekaval chovani aplikace jenz bys "omylem" navesil "zivotne dulezitou" funkcionalitu na nekterou z udalosti takove FMX TTrayIcon a cilova platforma nic ve smyslu tray ikony nema?
Podle tvé logiky bys neměl mít plíce, protože pod vodou nebo na Marsu není funkce plic dostupná ???
Presne tak. A pokud se v danych prostredich neda dychat, nemel bych se tvarit, ze jsou k preziti dostatkem (tedy jako IDE nabidnu komponentu tray ikony).
Přesně tak co? Já za sebe teda musím říct, že plíce mám a od boha mi byly nabídnuty, ještěže tak! Jsem s nimi veskrze spokojen a naučil jsem se žít s tím, že pod vodou nefungují.
Aha, takze Ty mas za to, ze diky plicim danym Tvym bohem muzes na Mars bez skafandru. Hodne zdaru! ;D O atributech platformy vim...
Ty jseš vážně zabedněnec. Ne, to jsem nikdy netvrdil - prosím o referenci, kde se zmiňuju o tom, že chci na Mars bez skafandru.
Aha, takze:Podle tvé logiky bys neměl mít plíce, protože pod vodou nebo na Marsu není funkce plic dostupná ???
znamena, ze mi Tvuj buh dal plice, ale nemam je mit protoze chci na Mars, nebo jak to myslis? ;D OMG. Ale k tematu, u platforme neutralniho frameworku, jenz nemuze mit tray icon, protoze tray icon nektera z platforem nema, nepatri takova komponenta do palety. Vytvor si ji za behu, cert vem, ale nedavej ji do palety FMX komponent. Chapeme?
Pochop ze funkcionalitu, jenz neni pro podporovane platformy spolecna nelze sjednotit.
Chapu, ale komponenty FMX jsou od toho aby konkretni funkcionalitu nejak sjednotily, coz v tomto pripade nelze.
Stále mi dlužíš odpověd ohledně TOpenDialog a TSaveDialog. Prosím, vysvětli mi jejich existenci podle tvojí logiky.
Nedluzim Ti nic. Bavime se tu o tray ikone. Mas na Android tray ikony? Mas, a vis jak je pridat jinym zpusobem nez upravou operacniho systemu? A za me ohledne dialogu ne, pokud nemas ve vsech platofmach dialogy, necht se ta komponenta jmenuje treba TFileSelector.
Ale k tematu, u platforme neutralniho frameworku, jenz nemuze mit tray icon, protoze tray icon nektera z platforem nema, nepatri takova komponenta do palety. Vytvor si ji za behu, cert vem, ale nedavej ji do palety FMX komponent. Chapeme?
Celou dobu se tu snazim vysvetlit, ze na paletu komponent nemuzes umistit komponentu, jenz neni na vsech platformach podporovana.
Ale k tematu, u platforme neutralniho frameworku, jenz nemuze mit tray icon, protoze tray icon nektera z platforem nema [...]
Zdar,
Vo VCL je komponenta TTrayIcon ktora umoznuje minimalizovat aplikaciu na systenove menu k hodinam a pripadne rozbalit popup menu. V FMX aplikaciach tato moznost chyba, je jasne ze na Androidoch to zmysel nema, ale vo win verzii aplikacie tuto funkcionalitu potrebujem vyuzivat.
Dakujem za rady
Nechapeme, no. Vlakno zacalo tim, ze OP nemuze najit TTrayIcon. Coz nelze protoze ne vsechny platformy ji maji.
Hm, co vic, Ty jsi pozdeji poslal radu ve smyslu:A proč by prostě tray icon pro FMX nemohla na systémech, které ji nepodporují, nic nedělat a na ostatních systémech být dostupná?
Jako jak? Ze v aplikaci navesis na udalost takove TTrayIcon nejaky kod a ten se, protoze jej cilova platforma nepodporuje, nikdy nespusti? Bez jakehokoli varovani?
Za me uz :-X
FMX by TTrayIcon klidně mít mohla - stejně tak, jako má TOpenDialog. TOpenDialog také "ne všechny platformy mají", ale přesto v FMX je.
Coz je spatne. Nebo Ti prijde v poradku, ze kompilator FMX projekt s na formulari vlozenou, platforme specifickou komponentou po pridani platformy, jenz nema danou funkcionalitu bez varovani prelozi (nebo tu komponentu z formulare odstrani, nebo...)?
Jak se ošetří nepodporované platformy, je už věc výrobců frameworků a mně to zajímá jenom okrajově. Hlavní je, že ve frameworku mohu používat i komponenty, které nejsou ve všech platformách podporované.
Kdyby chtěli v Embarcaderu uživatele upozornit, tak zabudují podporu ComponentPlatformsAttribute přímo do kompilátoru. Ten, když zjistí vytvoření nepodporovaného objektu (ať pomocí designeru nebo pomocí konstruktoru v runtime), by mohl vyhodit upozornění:
[DCC Warning]: Symbol 'TTrayIcon' is not supported on target platform.
To by bylo úplně dostačující.
Vezmu konkrétní příklad TOpenDialog na Androidu, jak to funguje teď v Delphi 10.3 a který si můžeš sám vyzkoušet: při OpenDialog1.Execute neudělá nic a vrátí True. To se mi upřímně řečeno nelíbí - já bych vyhodil ENotSupportedException nebo alespoň bych vrátil False.
mnohe komponenty su pre niektore platformy nepristupne, to je OK, ale ta trayicon v FMXku proste nieje ani pre Windows. Nejde ani o tak zivotne dolezitu funkcionalitu ale pri behu aplikacie pod win sa to proste hodi mat moznost zobrazit na liste nejake stavove informacie v podobe ikonky, pod androidom to je mozne riesit inak napriklad push upozorneniami
Chapu, ale komponenty FMX jsou od toho aby konkretni funkcionalitu nejak sjednotily, coz v tomto pripade nelze.
Čím víc se z toho snažíš vykecat, tím víc ze sebe děláš hlupáka...
Z niceho se nevykecavam. V FMX palete nema TTrayIcon co delat, stejne tak jako TWindowsStore.
Asi by se Ti libilo v tymu Embarcadera, tam zrejme neni treba moc myslet...
komponenty FMX jsou od toho aby konkretni funkcionalitu nejak sjednotily, coz v tomto pripade [TTrayIcon] nelze- to je objektivní nepravda, a ten výrok jsem už několikrát vyvrátil. Funkcionalitu TTrayIcon sjednotit pro platformy s tray icon lze a má to smysl. Podobné komponenty už v FMX existují, je důvod aby TTrayIcon v budoucnosti existovala taky.