Qt Creator, porta con un ottimo Qt Designer per la creazione di gui in modalità drag-and-drop.

Alcuni dei suoi pochi limiti, sono l'espandibilità dei componenti nel momento in cui massimizzi la finestra.

Si può ovviare facilmente a questo cosa usando la funzione di auto-expanding!

Ho trovato un utile metodo in C# che ci permette di mettere il pc in standby o in ibernazione.

Può essere utile da richiamare dopo avere lanciato procedure lunghe (cosa che mi è capitata a me tempo fa).

Il metodo si chiama SetSuspendState ed accetta tre parametri:

  • PowerState -> il tipo di operazione da eseguire
  • force -> valore booleano che indica se forzare l'operazione (true), oppure mandare prima un messaggio a tutte le applicazioni aperte (false, che sarebbe più sicuro)
  • disableWakeEvent -> altro valore booleano che indica se accettare eventi che possano riattivare il pc; false indica che questi eventi non sono accettati

Su un nuovo progetto, sto usando molto AJAX e Javascript anche per inviare i form.

In un form, devo aggiornare i dati dell'utente:

  • username
  • password
  • avatar

Quindi devo mandare due stringhe e un file.

Purtroppo su Linux ho qualche problema nei copia/incolla di dati presei da programmai basati su Java (tipo Netbeans o l'SQL Developer della Oracle).

Per cercare di capire cosa non va, ho avuto anche bisogno di sapere il charset usato di default.

Per identificarlo in Java è molto semplice usando il package java.nio.

Per Javascript / jQuery, esistono tantissimi plugin per eseguire operazioni sulle tabelle.

Ma se voglliamo applicare un semplice filtro, ricercando in una input text, non abbiamo bisogno di chissa qualche plugin o libreria.

Partiamo da un HTML del genere (io la riempi tramite PHP, ma è indifferente):

<div class="input-field">
                            <input type="text" id="search_suffix" onkeyup="searchTable('tbl_suffix', 'search_suffix');" placeholder="Search..">
                        </div>
                        <table id="tbl_suffix" class="striped responsive-table tbl_cou">
                            <thead>
                                <tr>
                                    <th>SUFFIX</th>
                                    <th>DESCRIPTION</th>
                                </tr>
                            </thead>
                            <tbody>
                                <?php foreach ($query as $var): ?>
                                    <tr>
                                        <td><?php echo $var['mime_suffisso']; ?></td>
                                        <td><?php echo $var['mime_descrizione']; ?></td>
                                    </tr>
                                <?php endforeach; ?>
                            </tbody>
                        </table>

Prima di seguire questo tutorial, ricordatevi che dovete "sbloccare" il vostro account, consentendo ad app esterne di connettersi.

Sennò il codice non funzionerà (e questo vale per qualsiasi programma scritto in qualsiasi linguaggio).

Dovreste eseguire il login con l'account che volete usare, ed andare a questa pagina: https://myaccount.google.com/u/0/security?hl=it&pli=1#connectedapps

Nelle versioni precedenti alla 5, per suddividere la pagina in più parti, si usavano i frame.

Nella versione 5 dell'HTML, e con l'avvento dei CSS 3, i frame risultano deprecati.

In alcuni casi, però, può risultare comodo avere le stesse funzionalità dei frame, senza doverli usare.

Girovagando ho trovato un plugin per jQuery che fa proprio questo: Splitter!

Sto iniziando a "giocare" con DHTMLX, e lo trovo molto interessante; ho deciso di usarlo per un gestionale online!

La prima cosa che sto mettendo in piedi è la pagina di login.

Quindi abbiamo il nostro form con username e password, e la chiamata atramite AJAX allo script PHP che si occuperà del login.

La creazione di file temporanei in C# è abbastanza semplice.

Usando il metodo Path.GetTempFileName, che si occupa di creare un file temporaneo e restituire il percorso intero.

Dalla documentazione ufficiale:

Questo metodo crea un file temporaneo con estensione TMP. Il file temporaneo viene creato nella cartella temporanea dell'utente, che è il percorso restituito dal metodo GetTempPath.
Il metodo GetTempFileName genererà un IOException se viene utilizzato per creare un file di più di 65535, senza eliminare i precedenti file temporanei.
Il metodo GetTempFileName genererà un IOException se non è disponibile alcun nome di file temporaneo univoco; per risolvere questo errore, eliminare tutti i file temporanei non necessari.

Ci sono vari servizi che mettono a disposizione API per le previsioni meteo, e tra le varie a me piace molto OpenWeatherMap!

Con un account gratuito è possibile usare le API REST, con alcune limitazioni (poche in verità).

Quindi, prima di tutto iscrivetevi e copiatevi la vostra API KEY.

Dopo di che andate a visualizzare le varie possibilità a disposizione (sempre a questo link).