Tous les téléchargements de Nono40
|
|
Gestion des messages windows WM_SIZING et WM_MOVING pour contrôler le dimensionnement et le déplacement d'une fiche.
|
|
|
|
|
L'exemple donné ici montre comment obtenir et modifier la position d'une fenêtre, même si celle-ci est agrandie ou réduite. Il est ainsi possible de donner la position que doit avoir la fenêtre dans son état "normal" même si celle-ci est agrandie ou réduite. De même dans le cas d'une fenêtre réduite ( hors fenêtre principale ), il est possible d'obtenir et de modifier la position de cette fenêtre réduite.
|
|
|
|
|
C'est un petit utilitaire qui permet de faire des copies d'écran directement en .JPGNOTES : Cette fonction utilise la fonction API GetAsyncKeyState() permettant de connaitre l'état appuyé ou relâché des touches, même si l'application n'est pas active.
Pour réaliser une copie d'écran il suffit d'appuyer sur la touche... PrintScreen du clavier. L'image sera alors enregistrée dans le répertoire spécifié dans la fenêtre de l'application. Le nom de l'image est de la forme 'imagexxx.jpg' ou xxx est incrémenté à chaque copie d'écran. |
|
|
|
|
Petite fenêtre effectuant un zoom d'une partie de l'écran. NOTES : C'est en cherchant autour du source précédent ( obtenir la couleur d'un point de l'écran ) que j'ai vu la fonction API StretchBlt. Je me suis dit qu'en une ligne on pouvait copier et agrandir une partie de l'écran : donc faire une loupe toute simple !Utilisation :
La loupe se place par défaut en haut à droite de l'écran. Pour la déplacer il suffit de cliquer dessus et de la faire glisser là ou vous voulez. Pour fermer la loupe il faut faire un clic droit dessus. La loupe reste active même quand vous travaillez sur une autre application. |
|
|
|
|
Il s'agit juste d'obtenir la couleur d'un point de l'écran...
|
|
|
|
|
Ce composant permet d'ajouter un dégradé de couleur sur le fond d'une fiche ou d'un panneauNOTES : Installation :
Menu composant\Installer un composant et sélectionner le fichier Degradeur.pas comme nom d'unité.Utilisation: Il suffit de le placer sur n'importe quel composant pouvant servir de conteneur : TForm, TGroupBox, TPanel Le fond est alors transformé en dégradé de couleur. Il faut le mettre en arrière plan ( click droit puis Options de contrôle\Mettre en arrière plan ) pour que tous les autres composants visuels soient visibles. Pensez aussi à mettre à True la propriété Transparent des TLabel. |
|
|
|
|
Composant permettant de gérer des raccourcis quelconques au niveau de l'application.NOTES : Ce composant permet de créer des raccourcis tordus comme CTRL-Z-ClickDroit.Installation :
Delphi 5 et 6 : installer le composant TRaccourci du fichier URaccourci.pas Delphi 4 : installer le paquet RaccD4.dpk ( le source est aussi disponible : URaccD4.pas )Vous pouvez installer le fichier .HLP dans l'aide de Delphi pour que celui-ci réagisse à la touche F1 sur TRaccourci et ses propriétés ( TRaccD4 pour la version Delphi 4 ). Pour installer le fichier d'aide faire comme suit : - Dans delphi, choisir Menu Aide->Personnaliser... - OpenHelp doit normalement s'ouvrir - Dans OpenHelp choisi ... Voir la suite |
|
|
|
|
Programme de présentation de la fonction API ShFileOperation() NOTES : Cette fonction est très utile pour toutes les fonctions groupées de fichiers. Il est possible de copier/suprimer/décplacer des répertoires complets, de gérer les collisions de noms, la création automatique des sous-répertoire en une seule opération. Cette fonction permet aussi de renommer des groupes de fichiers
Et autre avantage, elle accepte les caractères génériques * et ?. |
|
|
|
|
Programme d'exemple de l'utilisation des notifications de modification de Windows. NOTES : Ce programme montre l'utilisation des notifications de modification de répertoire. C'est utile pour suivre les modifications apportées aux fichiers dans un répertoire.
Le principe est le même que celui de la surveillance d'un répertoire, mais appliqué plusieurs fois... La liste des demandes est stockée dans un TList. Ce programme est donc un exemple de mise en oeuvre des points suivants : - Thread - Notification de changement - Gestion d'un TList |
|
|
|
|
Programme d'exemple de l'utilisation des notifications de modification de Windows. NOTES : Ce programme montre l'utilisation des notifications de modification de répertoire. C'est utile pour suivre les modifications apportées aux fichiers dans un répertoire.
Par exemple si vous affichez la liste de certains fichiers dans une ListBox ou un TreeView, il est possible de mettre la liste à jour seulement quand un fichier est ajouté et/ou supprimé. La surveillance est effectuée dans un autre Thread afin de ne pas bloquer l'application principale. |
|
|
|
|
Implémentation de la méthode du tri rapide. NOTES : Le programme d'exemple montre la différence de vitesse entre le 'tri à bulles' et le 'tri rapide'. Dans le cas de tableau de faible taille ( quelques centaines d'éléments ), le tri à bulles est bien suffisant, mais dans le cas de tableau très importants le 'tri rapide' doit être utilisé.
Le tri est ici appliqué à des tableaux d'entiers, mais il est facile de l'adapter à d'autres types. |
|
|
|
|
Exemple de transfert de fichier avec les composants TServerSocket et TClientSocket. NOTES : Le transfert de fichier n'est pas optimisé, mais ce n'était pas le but de cet exemple qui est en premier de montrer l'utilisation des composants.
Utilisation : Sur le serveur il suffit d'appuyer sur le bouton ouvrir. Sur un client il faut renseigner l'adresse ip du serveur et ensuite appuyer sur le bouton "Envoyer".Le client se connecte au serveur, transfert le fichier par bloc et se déconnecte. Le serveur n'accepte qu'un seul fichier à la fois, ce n'est pas une limitation du TServerSocket mais de l'application. |
|
|
|
|
Ce programme permet d'imprimer sur une double page la liste des mots de 2 et 3 lettres admis au Scrabble. NOTES : Ce n'est pas simplement une liste alphabétique, le programme trie les mots de trois lettres par extension avant ou arrière des mots de trois lettres. C'est très utile pour étudier des coups de maçonnerie dans le jeu.
Ce programme est un exemple de traitement d'un fichier texte, et d'impression directe en utilisant le TPrinter. |
|
|
|
|
Création, modification, menu, clicks... tout sur l'icône dans le systray ! NOTES : Voici un programme exemple simple montrant la mise en oeuvre d'une icône dans le systray ( barre des tâches )Ce programme affiche une petite flèche dans le systray donnant la direction de la souris ( c'est parfaitement inutile, mais c'est pour l'exemple ). Un menu est affiché sur le bouton gauche et un autre sur le bouton droit, de plus le double-clique est utilisé pour remettre l'application au premier plan.
Toutes les méthodes sont décrites dans les commentaires du source, en particulier l'utilisation simultanée du click et du double-click |
|
|
|
|
Implémentation des fonctions KeyPressed et ReadKey semblables aux fonctions du Turbo Pascal. NOTES : Ces deux fonctions sont utilisables pour les applications en mode console.KeyPressed permet de savoir si une touche est appuyée, sans la lire et sans bloquer l'application.ReadKey permet de lire une touche du clavier, si aucune touche est en attente, alors ReadKey attend la prochaine touche appuyée. Pour ne pas bloquer l'application il faut appeler ReadKey seulement si KeyPressed est à True.
|
|
|
|
|
C'est un composant libellé dont le texte est orientable et étirable NOTES : Installation:
Installer le composant TOrLabel contenu dans le fichier UOrLabel.PASUtilisation: comme un label mais avec quelques changements : - la propriété Font n'existe pas, utilisez OrFont - OrFont.Orient définit la rotation par pas de 0,1 degré - OrLabel ne fonctionne qu'avec des polices TrueType - Alignement/WordWarp etc n'existent pas...Remarques: TOrFont n'est pas descendante de TFont, elle ne peut donc pas être assignée à un autre composant. Mais vous pouvez l'utiliser dans vos propres composants : voir la méthode Paint du TOrLabel pour l'utilisation du TOrFont. TOrFont et TOrLabel ... Voir la suite |
|
|
|
|
Petite application montrant comment ouvrir un BMP et le convertir en JPG en choissisant la qualité du fichier JPG créé.
|
|
|
|
|
Jeu de dames en réseauCe jeux est réalisé en collaboration avec Bestiol.
C'est un jeu de dames qui se joue en réseau. Nous l'avons programmé un jour ou on ne voulait plus jouer à Quake III, alors nous avons programmé ce jeu afin de faire fonctionner un peu plus nos neuronnes ! C'est un exemple d'utilisation des composants TClientSocket et TServerSocket.Pour jouer, c'est facile : celui qui veut jouer avec les blancs crée la partie, puis le joueur noir se connecte sur le PC des blancs. La légalité des coups est contrôlée en permanence. Il n'est donc pas possible de tricher. |
|
|
|
|
KEYLOGGER, ou programme de suivi des touches appuyées sur l'ordinateur. Note importante : ce programme est fournit pour des besoin didactiques ainsi que pour présenter l'une des méthodes d'un KeyLogger. Vous êtes responsables de l'utilisation que vous ferez de ce source !Ce programme est basé sur l'utilisation des Hooks de windows. Les hooks permettent d'être avertis de certaines catégories d'évènements : clavier, souris...
Ainsi à chaque appui de touche une procédure du programme de suivi est appelée. Mais c'est là que les choses se compliquent : comme l'appel de procédure s'effectue dans l'environnement de l'application concernée, les variables du programme, même globales ne sont pas accessibles. C'est pourquoi la procédure app ... Voir la suite |
|
|
|
|
Aligner et adapter les composants d'une fiche en fonction des changements de taille.Tous les alignements, déplacements et modifications de tailles sont effectués sans l'écriture d'une seule ligne de code. Tout est basé sur les propriétés suivantes diponibles sur tous les composants visuels :
- Anchors : permet de fixer indépendamment les quatre cotés d'un composant sur le bord correspondant de la fiche. Tous les cotés fixés conservent leur distance par rapport au coté correspondant de la fiche. Par défaut les cotés haut et gauche sont fixés, ainsi le composant reste toujours à la même distance du coin haut-gauche de la fiche. En ne fixant que deux cotés formant un angle, le contrôle garde sa taille mais se déplace afin de conserv ... Voir la suite |
|
|