Emiliano_13 Inviato 24 Dicembre 2007 Segnala Condividi Inviato 24 Dicembre 2007 Salve, sto cercando di creare una minuscola applicazione con Xcode, e tra i comandi ho messo canzone precedente, play/pause, canzone successiva, artista, titolo, album e VOLUME. E qui casca l'asino. Volevo creare uno slider che mi permetteva di regolare il volume trascinando il pallino blu, e con InterfaceBuilder l'ho sistemato nella finestra, chiamandolo "volumeSlider" E fin qui tutto a posto, ho selezionato "Action" nell'inspector e cliccando su edit sono ritornato alla finestra di codice di Xcode. E ho scritto: on action theObject set content of slider "volumeSlider" of window "theWindow" to volume1 set volume volume1 end action E' giusto, no? Ho cliccato su Build & Go e tutto a posto, mi colorava di verde e di blu il codice ed è apparsa normalmente la finestra. con i vari comandi e lo slider. Quando cerco di spostare il cursore e lo rilascio, mi da questo errore: AppleScript Error The variable volume1 is not defined. (-2753) Qual'è il problema? Ho sbagliato qualcosa nel codice? Con la mia (poca) esperienza di "programmatore" ho capito che se gli dico set deve impostarmi la variabile, e allora, come è possibile che non sia definita? Grazie in anticipo per gli aiuti! Link al commento Condividi su altri siti Altre opzioni di condivisione...
MacMomo Inviato 24 Dicembre 2007 Segnala Condividi Inviato 24 Dicembre 2007 No, è sbagliato il codice. Il comando set si usa al contrario: set [b]VARIABILE[/b] to [b]VALORE[/b] Tu invece hai fatto il contrario. Se ho capito quello che vuoi fare basta che scrivi: set volume to content of slider "volumeSlider" of window "theWindow" In questo modo ti imposta il volume con il valore restituito dallo slider. Spero di essere stao chiaro, se c'è qualcosa chiedi pure. Ciao! Marco - Gallery MacBook Nero 2.2 GHz Intel Core 2 Duo - 4 GB RAM - Mac OS X 10.6 Snow Leopard Link al commento Condividi su altri siti Altre opzioni di condivisione...
Emiliano_13 Inviato 24 Dicembre 2007 Autore Segnala Condividi Inviato 24 Dicembre 2007 Grazie MacMomo, ma se inserisco questo: on action theObject set volume to content of slider "volumeSlider" of window "theWindow" end action Dice Build failed (1 error). Non capisco cosa sia sbagliat però Link al commento Condividi su altri siti Altre opzioni di condivisione...
MacMomo Inviato 24 Dicembre 2007 Segnala Condividi Inviato 24 Dicembre 2007 Allora riguardando il codice mi sono accorto di una cosa; la funzione on action theObject viene richiamata dall'oggetto theObject, che è l'oggetto collegato alla funzione stessa. Se ci sono più oggetti collegati a quella funzione devi controllare quale oggetto richiama la funzione e regolarti di conseguenza. Se invece la funzione è richiamata solamente dallo slider vuol dire che theObject è in realtà lo slider stesso, quindi dovrebbe bastare che scrivi: on action theObject set volume to content of theObject end action Se ti da di nuovo errore prova a controllare la sintassi del codice che sia tutta corretta. Per esempio il modo in cui si imposta il volume, nel primo esempio scrivevi: set volume volume1 quindi il codice giusto potrebbe essere: on action theObject set volume (content of theObject) end action Fammi sapere. Ciao! Marco - Gallery MacBook Nero 2.2 GHz Intel Core 2 Duo - 4 GB RAM - Mac OS X 10.6 Snow Leopard Link al commento Condividi su altri siti Altre opzioni di condivisione...
Emiliano_13 Inviato 24 Dicembre 2007 Autore Segnala Condividi Inviato 24 Dicembre 2007 quindi il codice giusto potrebbe essere: on action theObject set volume (content of theObject) end action Sostituendo con questo non mi da più Build Failed, ma in compenso quando provo a regolare il volume con lo slider (NSslider) mi da questo errore: AppleScript Error Can't make «class conT» of «class sliI» id 4 of «class boxO» id 3 of «class boxO» id 2 of window id 1 into type «class sing». (-1700) ... Mi dai il tuo contatto di Messenger o iChat? ... Link al commento Condividi su altri siti Altre opzioni di condivisione...
MacMomo Inviato 25 Dicembre 2007 Segnala Condividi Inviato 25 Dicembre 2007 Ciao! Probabilmente è un problema di tipi di variabili. Dovresti controllare nei dizionari che tipo di dato restituisce lo slider e che tipo di dato accetta il volume. Di solito questo tipo di errori vengono fuori quando si cerca di assegnare un tipo di dato ad una proprietà di un'altro tipo. Il mio contatto AIM è themacmomo, ma non penso che questi giorni sarò raggiungibile , conviene che se c'è qualcosa la scrivi direttamente qui nel forum così se passo posso risponderti, ed eventualmente può farlo chiunque conosca la risposta . Marco - Gallery MacBook Nero 2.2 GHz Intel Core 2 Duo - 4 GB RAM - Mac OS X 10.6 Snow Leopard Link al commento Condividi su altri siti Altre opzioni di condivisione...
Emiliano_13 Inviato 25 Dicembre 2007 Autore Segnala Condividi Inviato 25 Dicembre 2007 Ok, grazie, ti farò sapere se ho bisogno! Ciao ciao Link al commento Condividi su altri siti Altre opzioni di condivisione...
Messaggi raccomandati
Archiviato
Questa discussione è archiviata e chiusa a future risposte.