, Thibaut Cuvelier [Les formulaires avec beaucoup de champs d'édition utilisent souvent une disposition en grille avec les étiquettes dans la première colonne et les champs d'édition dans la deuxième. Ceci apparaît attractif, sauf lorsque les champs n'acceptent qu'une petite quantité de texte - un ou deux caractères - la grille leur donne la même largeur qu'aux champs qui prennent une longue ligne de texte. Ceci prive les utilisateurs d'un repère visuel que des largeurs proportionnelles pourraient donner. Cet article fournit une solution simple à ce problème.
Vous devez être identifié pour poster un commentaire.
, Thibaut Cuvelier [Si vous avez déjà utilisé le module OpenGL dans Qt à un moment ou un autre, vous vous êtes peut-être retrouvé à vouloir exécuter une partie d'OpenGL dans un thread séparé. Qt 4.8 apporte de nouvelles fonctionnalités intéressantes. Cet article décrit l'une de ces fonctionnalités, la séparation du code OpenGL dans des threads séparés, pour conserver l'interface utilisateur réactive lors des calculs 3D.
Vous devez être identifié pour poster un commentaire.
La nouvelle version de Qt vient de sortir en version 5 alpha. Cette version améliore la prise en charge de la nouvelle norme du C++, le C++11, et modifie ainsi le fonctionnement des signaux et slots de Qt. Cet article fait un rappel sur l'utilisation des signaux et slots et présente les nouvelles fonctionnalités offertes par Qt5.
Vous devez être identifié pour poster un commentaire.
, Thibaut Cuvelier [L'utilisation de couleurs et de polices appropriées pour mettre en évidence différents éléments de programmation et balises de langages aide le cerveau à comprendre les structures de documents. En signalant les erreurs de syntaxes, la coloration syntaxique interactive aide également à réduire le temps utilisé dans le cycle « compiler, exécuter, tester ». La coloration peut même être utilisée pour signaler les erreurs de langages dans les documents sous forme de texte. Avec Qt, ajouter la coloration syntaxique dans un QTextEdit est très simple, c'est ce que cet article va montrer.
Vous devez être identifié pour poster un commentaire.
, gbdivers [L'instanciation est une technique permettant de dessiner plusieurs copies du même objet. Cette technique sera intéressante dans des scènes contenant des objets similaires : une forêt d'arbre, le feuillage d'un arbre, une foule, l'herbe d'une pelouse.
Vous devez être identifié pour poster un commentaire.
Depuis plusieurs années je développe une base de données un peu atypique. Elle est composée de « cellules » reliées entre elles par des « liens ». Elle est accessible via des pages internet en AJAX.
Exemple : la cellule « les messageries » est reliées à des cellules « messageries », chacune d’elles étant reliées à des cellules « messages » ou des cellules « classements ». L’arborescence est affichée dans une pages web sous forme d’arbre.
Le noyau est développé en C++ de Builder, actuellement il tourne sur une plate-forme windows.
Pour y accéder des procédures en javascript complètent des objets classiques de formulaire et définit notamment un objet « arbre » en implémentant des comportements typiques aux bases de données (affichage, création, mise à jour, suppression).
Atout de cette base de données : la structure est continuellement évolutive (sans création de table ….), les services développer dans le noyau peuvent intégrer une démarche récursive permettant de parcours la base.
Actuellement, je souhaite trouver des personnes souhaitant participer au développement de ce projet. Plusieurs axes sont possibles : développer de nouveaux services dans le noyaux, améliorer l’interface noyau/pages web, développer des procédures en javascript, utiliser d’autres langages, etc.
Actuellement la protection est simpliste : une identification permet l’accès à la base en mise à jour.
Une application existe et fonctionne depuis plusieurs années : elle permet de gérer des messages, les classer et/ou les associer à un planning. Le noyau peut aussi référencer des fichiers déposés dans un dossier spécifique et créer des cellules associées. Ces cellules sont ensuite classées et/ou intégrées au planning comme les messages. Un rangement physique des fichiers est implémenté dans le noyau. Il est possible de répondre aux messages, les transférés … tout en gardant le fils des échanges.
Si vous êtes intéressé par l’aventure, vous pouvez répondre à cet article …
Vous devez être identifié pour poster un commentaire.
, gbdivers [Le support d'OpenGL dans Qt5 a été modifié pour mieux l'intégrer avec les nouveaux modules de Qt : QtQuick2 et Qt3D. Cet article présente les modifications apportées dans Qt5.
Vous devez être identifié pour poster un commentaire.
, Thibaut Cuvelier [Comme peu le savent déjà, il est possible de mélanger facilement du dessin avec OpenGL et QPainter avec l'aide de QPainter::beginNativePainting() et QPainter::endNativePainting().
Mélanger OpenGL et QPainter avec Qt 4.5.x sous Sun Studio 12
Vous devez être identifié pour poster un commentaire.
, Thibaut Cuvelier [Une table de hachage à référence faible contient des paires clé-valeur sans que l'on puisse les atteindre. On en recense quatre types :
Dans cet article, on propose une implémentation basée sur Qt pour le second type : une table de hachage où la valeur est une référence faible. Ceci signifie qu'une paire clé-valeur sera automatiquement enlevées de la table dès que la valeur ne sera plus utilisée dans le programme.
Ce type de structure est utile pour réduire l'utilisation mémoire en partageant les structures de données sans fuite de mémoire.
Implémentation d'une table de hachage à référence faible avec Qt
Vous devez être identifié pour poster un commentaire.
, Jérôme Lambert [Si vous faites partie des nombreuses personnes n'ayant pas eu l'occasion d'assister aux TechDays'12 ou que tout simplement vous n'aviez pas la faculté d'assister à plusieurs sessions en même temps, rassurez-vous car le contenu intégral des 3 jours de sessions, soit plus de 300 sessions techniques ainsi que les conférences plénières, vient d'être publié par Microsoft sur son site officiel.
Vous devez être identifié pour poster un commentaire.
, gbdivers [A la demande de LittleWhite, mon premier bloc technique est consacré à l'utilisation des geometry shader. Il n'y a rien de tres compliqué donc je présente un exemple simple apres quelques rappels. Pour ceux qui ne connaissent pas du tout les geometry shaders, je ferais un article plus detaille sur ce sujet.
Pour faire au plus simple, j'utilise Qt et en particulier QShaderProgram, qui gère les geometry shaders depuis Qt 4.7.
Vous devez être identifié pour poster un commentaire.
, Thibaut Cuvelier [Le temps passant, la FAQ Qt s'est enrichie, notamment au niveau de sa section Qt Creator. Bien qu'actuellement ne contenant que quatre entrées (http://qt.developpez.com/faq/?page=edi-qtcreator), le travail en interne continue, au point qu'il nous a semblé mieux de séparer cette partie et d'en faire une FAQ à part, contenant actuellement 11 QR, soit à peu près autant que la FAQ Qt lors de son lancement en 2007 !
N'hésitez surtout pas à la lire et à nous faire part de vos retours ! Si vous souhaitez y participer, n'hésitez pas non plus à vous proposer (par MP ou par email - en bas de page) !
Vous devez être identifié pour poster un commentaire.
Copyright © 2000-2012 - www.developpez.com