J'ajoutais une fonctionnalité de barre de chargement à mon programme en Java et je me demandais si je pouvais définir une liste de processus à effectuer, afin de connaître le nombre de processus à effectuer. Par exemple, en les enregistrant sous forme de chaînes?Mettre des appels de méthode dans une ArrayList?
ArrayList<String> processes = new ArrayList<String>();
processes.add("CSVWriter.createFileOfCompany(\"Random Company\");");
processes.add("FileConverter.convertCSVToXLS(classPath +
\"/Output/Random_Company.csv\");");
for (int i = 0; i < processes.size(); i++) {
// run process
// update loading bar
}
Ce ne sont pas de vraies méthodes pour mon programme, mais elles sont assez similaires à ce que je veux accomplir.
Je suis sûr que ce n'est pas le meilleur moyen, mais je veux avoir un moyen de créer une liste comme ça, donc je sais combien de processus il y a avant de les exécuter. J'ai un système mis en place pour décomposer ces processus encore plus loin et montrer leurs progrès, donc cette barre est assez précise pour l'instant, mais je dois numéroter chacun des processus = /. Peut-être que je manque juste le point. Créer des barres de progression est totalement nouveau pour moi.
S'il existe de bons articles sur la création de la barre de progression, n'hésitez pas à m'en faire part également. Gardez à l'esprit que je n'utilise pas une interface utilisateur graphique basée sur le swing. Cette barre est tout le texte S.O.P.
Un grand merci,
Justian Meyer
Est-ce que vous supposez que toutes vos méthodes vont prendre autant de temps à fonctionner? –
Je ne m'attends pas à eux. Je veux fondamentalement décomposer les méthodes en blocs égaux. S'il y a 5 appels, il sera divisé en 5 blocs. Chacun de ces blocs recevra des informations des boucles dans les méthodes pour les remplir lentement. Imaginez-le comme ceci '[///// | ///// | ///// | ///// | /////] '...................................' [///// | ///// | // ... | ..... | .....] 'signifie que les deux premiers processus sont terminés et que 2/5 du processus 3 est terminé. Bien sûr, cela ressemblerait plus à: '[//////////// .............] 48%' –
Ma méthode pour créer ceci n'est pas vraiment propre comme je voudrais, donc je suis totalement ouvert à de meilleures idées. –