12 | |||||||
Auteur | Messages | ||||||
---|---|---|---|---|---|---|---|
pinky | #1 Posté le 6/11/2024 à 10:48:17 | ||||||
Bonjour, Mon application est composée d'une TextArea dans laquelle je colle des données qui sont affichées comme ceci dans la TextArea :
Il s'agit donc de données relevées tous les 10 kms. La valeur au départ (donc au km 0 est de 1.5), la valeur au km 10 est de 12.8, etc ... Les valeurs peuvent être avec ou sans point. L'échelle pour les kms est toujours de "10" en "10" et commence à "0". Le but de mon application est de déplacer les données contenues dans la TextArea, à l'aide d'un Button, dans un TableView qui possède deux colonnes (Colonne 1 pour les kms et colonne 2 pour les valeurs). Auriez vous un exemple connu (Ou un tuto) qui explique comment faire ceci. Peut être que mon choix TextArea vers TableView n'est pas adapté à ce que je veux faire, je ne sais pas. J'ai fouiné sur le forum et dans les exemples d'applications sur la Forge mais je n'ai pas trouvé comment faire. Merci d'avance pour votre aide. Dolmen (table pierre) : Caillou préféré des Bretons (un dolmen de prédilection). | |||||||
vuott | #2 Posté le 6/11/2024 à 11:48:47 | ||||||
Ne cedere ineluctabili possimus | Il serait peut-être possible de faire quelque chose de ce genre :
« Vita non suavis esse potest, nec Mors amara. » | ||||||
pinky | #3 Posté le 6/11/2024 à 12:44:13 | ||||||
Bonjour vuott et merci. Quelle rapidité. C'est plus compliqué que je le pensais. Je vais bien examiner ton code afin d'essayer de le comprendre et faire des tests. Je reviendrai te dire ce que ça donne. Je te remercie pour le temps passé sur ce code. Dolmen (table pierre) : Caillou préféré des Bretons (un dolmen de prédilection). | |||||||
O.Coquet | #4 Posté le 6/11/2024 à 12:56:07 | ||||||
Ce qui n'est pas devra-t-être inventé | La question que je me pose avant toutes choses est: Comment tes données arrivent-elles dans ce textarea ????? Amitié Olivier (Alias Olinux) Raspberry pi 3 et 4, pc Xubuntu, Arduino..... Quelques autres "vieux" ordinateurs ! Et un bon fer à souder | ||||||
pinky | #5 Posté le 6/11/2024 à 13:07:20 | ||||||
Bonjour Olivier, Par un simple copier/coller provenant d'une autre application. Dolmen (table pierre) : Caillou préféré des Bretons (un dolmen de prédilection). | |||||||
pinky | #6 Posté le 6/11/2024 à 13:22:48 | ||||||
Je viens de tester ton code vuott J'ai l'impression que c'est exactement ce que je cherchais à faire depuis plusieurs jours. Tu m'as fait ça en quelques minutes. Je suis impressionné. Peux tu me dire à quoi sert ce morceau de code ?
Dolmen (table pierre) : Caillou préféré des Bretons (un dolmen de prédilection). | |||||||
vuott | #7 Posté le 6/11/2024 à 14:27:20 | ||||||
Ne cedere ineluctabili possimus | Peux tu me dire à quoi sert ce morceau de code ? Comme je l'ai écrit dans le commentaire de cette ligne de commande: "Nous supprimons les espaces de la chaîne de valeurs, pour n'avoir que des valeurs numériques"; ...je suppose que vous souhaitez exclure le caractère « espace » (numéro décimal ASCII = 32, en hexadécimal = 20) des valeurs que vous saisissez dans les cellules de "TableView". La fonction "Split()" divise une chaîne en sous-chaînes délimitées par des séparateurs et des caractères d’échappement. Cette fonction renvoie un tableau de chaînes rempli avec chaque sous-chaîne détectée. Si vous ne souhaitez pas utiliser la fonction "Chr()", vous pouvez utiliser le caractère 'escape' "\x" suivi de la valeur hexadécimale ASCII du caractère "espace":
ou plus simplement en définissant explicitement le caractère de l'"espace":
« Vita non suavis esse potest, nec Mors amara. » | ||||||
pinky | #8 Posté le 6/11/2024 à 14:58:40 | ||||||
Merci pour les explications. Je voulais en effet supprimer les espaces. Le code fonctionne parfaitement pour les espaces. Y a t'il ce même genre de fonction pour supprimer les retours à la ligne dans le texte que je copie pour coller dans la TextArea ? Dolmen (table pierre) : Caillou préféré des Bretons (un dolmen de prédilection). | |||||||
vuott | #9 Posté le 6/11/2024 à 15:13:35 | ||||||
Ne cedere ineluctabili possimus | Par « retours à la ligne », vous entendez probablement la « fin de la ligne ». Vous pouvez utiliser : - la constante Gambas 'gb.newline' ; - la fonction 'Chr(10)' ou en hexadécimal 'Chr(&0A)' ; - le caractère 'escape' "\x0A" ou (le plus couramment utilisé) "\n". « Vita non suavis esse potest, nec Mors amara. » | ||||||
pinky | #10 Posté le 6/11/2024 à 15:27:39 | ||||||
Oui, c'est probablement des fins de lignes. Parfois, ceux qui remplissent les données qui proviennent de l'application d'origine dans laquelle je copie les données ne sont pas correctement saisies. Ils laissent parfois 2 espaces entre les nombres ou écrivent des lignes incomplètes et poursuivent à la ligne suivante. Je ne sais pas si je suis très clair dans mes explications ? Je vais tester avec les codes que vous venez de me donner. Dolmen (table pierre) : Caillou préféré des Bretons (un dolmen de prédilection). | |||||||
vuott | #11 Posté le 6/11/2024 à 15:31:32 | ||||||
Ne cedere ineluctabili possimus | Exemplum:
« Vita non suavis esse potest, nec Mors amara. » | ||||||
vuott | #12 Posté le 6/11/2024 à 15:37:09 | ||||||
Ne cedere ineluctabili possimus | Ils laissent parfois 2 espaces entre les nombres ou écrivent des lignes incomplètes et poursuivent à la ligne suivante. ...vous pouvez aussi utiliser la fonction native "Replace()" :
« Vita non suavis esse potest, nec Mors amara. » | ||||||
pinky | #13 Posté le 6/11/2024 à 15:47:02 | ||||||
Avec toutes ces solutions, je devrais réussir à faire quelque chose qui fonctionne. C'est motivant pour continuer. Je vais tester tranquillement afin d'essayer de comprendre car tout ça est compliqué pour moi. Encore merci pour ton aide et ta patience. Bonne soirée. Dolmen (table pierre) : Caillou préféré des Bretons (un dolmen de prédilection). | |||||||
vuott | #14 Posté le 6/11/2024 à 15:50:00 | ||||||
Ne cedere ineluctabili possimus | Bien sûr, il existe d’autres solutions, probablement encore meilleures, mais celles-ci me sont venues à l’esprit maintenant. Bonne soirée. « Vita non suavis esse potest, nec Mors amara. » | ||||||
Patrick | #15 Posté le 7/11/2024 à 18:13:06 | ||||||
Bonsoir, Il est aussi possible d'utiliser les expressions régulières qui vont extraire uniquement les données qui vous intéressent, il faut activer gb.pcre. Sur l'exemple de Vuott :
| |||||||
12 |