Newsgroup: it.comp.lang.delphi
Titolo: Come creare una barra strumenti di sistema (tipo quick launch) o sovrappormi all'orologio di sistema [D6] ?

Visto che non ho trovato granchè in giro, volevo farmi un FuzzyClock
(come c'è ad esempio in KDE), cioè un orologio che mostra l'ora a parole
(con un certo grado di imprecisione), tipo "Un quarto alle otto", o "E'
pomeriggio!".
Il programma in sè è semplice, però vorrei che la sua finestra
apparisse:
- al posto dell'orologio di sistema (ma non ho trovato in giro niente
per poter scrivere lì): al massimo con CoolTray posso far apparire
accanto un testo convertito in grafica(però troppo corto per le mie
necessità)
- creare una barra strumenti (tipo quella del quick launch) in cui
inserire il mio programma; un po' come Copernic Desktop o il Winamp
Controller dei CrazyBeavers
Ho provato a cercare un po' in giro, ma senza successo, anche perchè non
conosco bene i termini da cercare: la tray notification area dovrebbe
essere quella con le iconcine dei programmi in esecuzione, accanto
all'orologio: ci si può far apparire anche un testo ?
La soluzione della nuova barra dovrebbe essere più "standard" però anche
qui i termini non mi aiutano (le barre si trovano in qualsiasi
programma, non so come cercare i riferimenti solo a quelle di
sistema...instrument bar mi dirotta sulla musica, Delphi è un marchio
usato anche in ambito automobilistico, bar non ne parliamo...):insomma,
mi bastarebbe una dritta almeno sui termini da cercare.
Grazie!
Simone
_________________________________________________________
 Quando Edison provava a costruire la sua prima lampadina
 e si susseguivano le prove senz'esito, sentiva ripetersi: 
 "Hai visto? Hai sbagliato ancora!", cui era solito 
 rispondere: "Non ho sbagliato,ho scoperto un altro modo 
 in cui non si fa una lampadina"

 mi bastarebbe una dritta almeno sui termini da cercare.
Se con google cerchi "tray notification area" trovi un bel po' di 
informazioni,
anche se non tutte utili ovviamente, ne trovi anche una in italiano che ne
descrive il funzionamento.
Se  cerchi "tray notification area"+delphi troverai materiale riferito alla
programmazione in Delphi.
Prova anche a cercare "tray area"+delphi oppure systray+delphi.
Spero di averti aiutato almeno un po'.
Ciao.
---
Ryo GQI 

 Controller dei CrazyBeavers
http://www.microsoft.com/msj/archive/S274.aspx
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 pomeriggio!".
a tal proposito, una cosa molto semplice che avevo postato su Delphi e 
Dintorni:
 
http://tinyurl.com/chbxx
-- 
Mauro Falzari 
   [ 
http://digilander.libero.it/mauro.falzari
 ]
 
 "Se guardi nell'abisso, anche l'abisso guarda in te." 
   (Friedrich Nietzsche)

   
http://tinyurl.com/chbxx
Brrr... Forse dovresti correggere quel "se il suo orologio farebbe" con
"se il suo orologio faCESSE" ;-)


 "se il suo orologio faCESSE" ;-)
già...ma ormai è tardi :-)


pomeriggio!".
Grazie mille a tutti: solo grazie a voi la ricerca è andata verso le
AppBar e quindi ho trovato il componente AppBar per Delphi
(
http://snipurl.com/ew9y
) che fa al caso mio!
Grazie ancora!
Simone
_______________________________________________________
      "Try not! Do, or do not. There is no try."                           
     by Yoda, Jedi Master  (from anonymous poster)
( remove/togli 'FalselinK' to reply/per rispondere )

 (
http://snipurl.com/ew9y
) che fa al caso mio!
è un po' vecchiotto...funziona senza problemi?


 è un po' vecchiotto...funziona senza problemi?
Le api per le AppBar non dovrebbero essere state sconvolte.


è un po' vecchiotto...funziona senza problemi?
In effetti ho parlato troppo presto: riesco a creare una Appbar, però si
"becca" una intera linea (sia lasciando un buco alla destra, sia
occupandola fino in fondo); insomma, non risulta regolabile in larghezza
(non riesce a condividere lo spazio di una riga con altri).
Ho provato un AppBar shareware (fornito in una marea di versioni, tra
cui per D6), ma mi dà un bell'errore e si ferma lì.
Ho provato a cercare in giro qualche spunto e l'unica cosa che ho
trovato è un plugin di Winamp che ci riesce (Winamp Controller) che,
mentre si installa, registra (con regsvr32) una propria .dll che
costituisce il plugin...in effetti, suppongo che si debba dire in
qualche modo a WIndows di accettare la propria barra tra quelle
attivabili...allora ho provato (mai fatto prima!) a creare una versione
.dll del programma, ma inevitabilmente ho avuto problemi di inesperienza
(nel registrarlo dice che mancano almeno 2 entry point [in effetti
qualcosa da chiamare alla partenza ed alla chiusura, suppongo
serva...forse per quello di entrata potrei mettere l'attuale
OnFormCreate].
Qualcunoha scritto che lavorando con ActiveX non serve registrare
nulla...boh, di quelle sì che ignoro tutto!
Poichè non ho molto tempo (e ne ho già perso molto più del previsto), ho
cercato di cambiare tecnica: dapprima ho provato a far apparire l'ora
modificando la caption attuale (ma anche qui problemi a non finire...e
poi ad occhio c'è da combinare un bel casino a modificare la caption dei
programmi a tradimento); la variante successiva è stata quella di
"disegnare" il testo (canvas & c) nella caption attualmente attiva.
A parte alcuni problemi di scie "dimenticate", la cosa va discretamente,
però viene regolarmente sbagliata la posizione orizzontale perchè non
riesco a leggere la vera lunghezza della form attualmente attiva (il
codice l'ho preso in blocco da un programma per aggiungere un pulsante
alla sinistra dei pulsanti di Min/Max/Chiudi): sembra che il parametro
Width goda però di una certa immutabilità (invece il canvas l'ho
definito in base all'handle della form attiva).....ho provato ad usare
vari parametri di GetSystemMetrics, ma senza grande successo...
In realtà ho veramente da fare altro: più avanti cercherò di chiarirmi
le idee su come ricavare i parametri di ampiezza di una qualsiasi
finestra, purchè sia attiva (molti esempi che ho trovato riguardano
invece una form creata con Delphi) e soprattutto dovrò studiarmi gli
eventi per evitare di aggiornare inutilmente l'ora (cosa che attualmente
avviene ogni 5 secondi) o per aggiornarla tempestivamente se cambio
finestra,...
Il curioso è che per il cuore del programma in sè ho impiegato lo 0.1%
del tempo totale che finora ho perso per gestire la parte più "estetica"
:-(
Vabbè, alla prossima!
Grazie ancora.


 occupandola fino in fondo); 
prova questo:
- scaricati la JVCL 3.00 Mega Demo da 
http://sourceforge.net/project/showfiles.php?group_id=45786&package_id=147931
- esegui JVCLMegaDemo.exe 
- vai alla palette JvDialogs;
- clicca la quarta icona ed esegui la JvDesktopAlert Demo.
Prova a cliccare Preview (la finestra che appare sopra l'orologio nella tray 
area è spostabile)


 
http://sourceforge.net/project/showfiles.php?group_id=45786&package_id=147931
Devo confessare che sono allibito dalla completezza di questa libreria, la
quale l'ho sempre lasciata da parte, considerandola assai prolissa.
Con questo demo si ha la possibilita' di toccare con mano l'uso dei singoli
componenti, ci voleva proprio.
Magari le installo!
Grazie
Ciao!
-- 
Morde. 
FAQ di icld (beta-version): 
http://icld.altervista.org
 
M-List di icld: 
http://it.groups.yahoo.com/group/icld/

 singoli componenti, ci voleva proprio.
e guarda che la demo è icompleta, perchè mostra il funzionamento di meno 
della metà dei componenti presenti
