Putain de glyph sur un Speedbutton... [Delphi] - Programmation
Marsh Posté le 22-01-2002 à 21:11:56
1 maniere simple : tu changes le pixel de coin haut (ou droit ?) gauche pour le mettre à 1 couleure diff de celle du fond
Marsh Posté le 22-01-2002 à 21:16:29
Pas con
Marsh Posté le 22-01-2002 à 21:20:02
(C le coin inferieur gauche)
Je sais pas pq quand Transparent est à False le glyph reste transparent.... un bug ?
Marsh Posté le 22-01-2002 à 21:20:08
Ca amrche (pixel bas gauche) , merci
Sinon, Pour enfermer une form a l'intérieur d'une autre (en fait, une grande fenetre en contenant plusieurs, ne pouvant sortir de celle ci), C bien la propriété parent ?
[edtdd]--Message édité par Tetedeiench--[/edtdd]
Marsh Posté le 22-01-2002 à 21:25:39
Il faut changer le FormStyle
Marsh Posté le 22-01-2002 à 21:27:42
PS : la propriété Transparente est pour le fond du SpeedButton pour quand la propriété Flat est à True, Donc C pas 1 bug
PS(bis) : Pour que le glyph ne soit pas transparent on peut le faire 'proprement' par :
SpeedButton1.Glyph.TransparentMode := tmFixed;
SpeedButton1.Glyph.TransparentColor := -1; // où -1 est une couleur qui n'est pas ds l'image
Voilou
[edtdd]--Message édité par [SDF]Poire--[/edtdd]
Marsh Posté le 22-01-2002 à 21:32:07
[SDF]Poire a écrit a écrit : PS : la propriété Transparente est pour le fond du SpeedButton pour quand la propriété Flat est à True, Donc C pas 1 bug PS(bis) : Pour que le glyph ne soit pas transparent on peut le faire 'proprement' par : SpeedButton1.Glyph.TransparentMode := tmFixed; SpeedButton1.Glyph.TransparentColor := -1; // où -1 est une couleur qui n'est pas ds l'image Voilou |
Parfait, merci beaucoup (On arrive ENFIN au bout de ce putain de projet )
Marsh Posté le 22-01-2002 à 21:36:29
Une dernière question...
On a actuellement une form créé au démarrage que l'on garde car il y a du code dedans...
mais notre vraie form principale est une autre form ...
Tu vois ce que je veux dire ?
En gros, dans notre Form1 créé au démarrage on a fait une ébauche pour faire le code, et la vraie interface se trouve sur une autre form...
Tu sais comment on fait en sorte que ce soit une autre form qui soit créé au démarrage ?
Because sans ca, vu que C elle la parente, il gueule comme un perdu
Marsh Posté le 22-01-2002 à 21:49:49
Tu changes dans les options de projet->Fiches->Fiche principale
Marsh Posté le 22-01-2002 à 22:03:05
MDR j'avais pas vu
Bon ben je crois que C bon maintenant...
merci de ton aide [SDF]Poire !
Je te filerai l'install des que l'installshield sera créé, Je te dois bien ca
Avec les sources
Marsh Posté le 22-01-2002 à 22:40:09
Et la note
Marsh Posté le 23-01-2002 à 09:30:53
Clair
Dis, j'ai foutu une paire de fenetres en MDIChild dans formstyle, et ma principale en MDIForm ...
le blem C qu'il ne veux pas cacher une fenetre du type MDIChild...
or on en a besoin nous, car on ne veux la faire apparaitre que lorsuqe l'utilisateur clique sur le bouton AD HOC...
Tu sais C quoi le blem ?
Marsh Posté le 23-01-2002 à 09:51:53
tu peux ne créer la fenêtre que lorsque tu en as besoin au lieu de la créer au démarrage du programme
c'est d'ailleurs ce qu'il vaut mieux faire dès qu'on a plus que deux ou trois fenêtres
pour la création il suffit d'aller piquer la ligne qui est dans le fichier .dpr
pour la destruction tu fais un Free et ennsuite tu mets la variable qui contenant la Form à nil (pour éviter les problèmes par après si l'appli tente de supprimer elle même la fenêtre quand on quitte)
Marsh Posté le 23-01-2002 à 10:14:19
Yep, on a effectivement capté, ca amrche bieng
A ceci pret qu'on aimerai ne créer qu'une seule occurence de la fenetre... ou réussir a en gérer plusieurs.
Style le mec il clique plusieurs fois sur le bouton qui fait le create de la from... Il se retrouve bien avec plusieurs fois la meme form (tu l'as créé plein de fois).
Il veut détruire une occurence, et une seule... tu peux pas foutre le pointeur a nil, Sinon pour les autres tu es baisé
Ca marche comment donc ?
Marsh Posté le 23-01-2002 à 10:17:14
Non ben C bon ca passe nickel avec :
FreeandNil(Sender as TObject);
Cai tauuuuuuuuuuuuup moumoute
Sauf quand on vire le dernier, ca merde
Pourquoi ?
( PS : ca le fait aussi avec (Sender as Tform).free; )
[edtdd]--Message édité par Tetedeiench--[/edtdd]
Marsh Posté le 23-01-2002 à 10:22:55
RE edit : C des qu'on ne les ferme pas dans l'ordre... zarbi
Marsh Posté le 23-01-2002 à 11:11:15
Pour ne creer qu'une seule fois la fenetre, il suffit de ne la creer que si elle est = à nil.
Sinon quand tu fais un Free de Sender, il vient d'où le Sender ?
Dans quel ordre ça ne plante pas ? l'ordre de création ? tu fais peut-être des appels de trucs d'une fenêtre dans l'autre. Ça plante comment ?
[edtdd]--Message édité par antp--[/edtdd]
Marsh Posté le 23-01-2002 à 11:20:18
Ca ne plante effectivement pas dans l'ordre de création...
mais finalement, gérer une seule fenetre c'est mieux qu'en gérer plusieurs, niveau lisibilité...
Donc C'est parfait, on a tout ce qu'il nous faut, merci
Marsh Posté le 23-01-2002 à 14:20:06
C encore nous
Tu peux m'expliquer pourquoi, quand je fais ca :
ModifierClient.close;
Ca renvoie une erreur alors que ca va appeler ca derrière :
procedure TModifierClient.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
ShowWindow(RechercheModifClient.Handle, SW_SHOW);
RechercheModifClient.Requetepresence.Active := FALSE;
RechercheModifClient.Requetepresence.Active := TRUE;
freeandnil(ModifierClient);
end;
On s'est planté dans la fonction pour fermer une fenetre ou quoi ?
On clique sur la croix (on ne passe pas le le .close donc) ca marche nickel, on passe apr le .close, ca chie...
Une idée ?
(Erreur : access violation machin... )
Marsh Posté le 23-01-2002 à 14:31:40
heu ton freeandnil(ModifierClient); dans une fonction de TModifierClient quand ça plante pas c'est un coup de chance
ne jamais détruire l'objet dans lequel tu es, c'est comme couper la branche sur laquelle tu es assis
pour faire ça tu dois utiliser la méthode Release, qui attend que la form ait traité ses events avant de la détruire
par contre pour mettre la variable à nil ca il faut le faire ailleurs...
a la limite peux faire:
Release;
ModifierClient := nil;
faut voir si ca marche...
[edtdd]--Message édité par antp--[/edtdd]
Marsh Posté le 23-01-2002 à 16:23:05
Ouh que vii mn bon ami ca marche
Je sens que je vais hurler notre note par ici
Et vous aurez droit a une présence dans l'Aide !
Marsh Posté le 23-01-2002 à 18:29:02
lol 1 fois moi 1 fois Antp
je prend le soir et toi la journée
Marsh Posté le 22-01-2002 à 21:00:41
Kikoo C encore moi !
J'aurai besoin de faire des boutons entièrement recouverts pas une petite image en bmp ( 50x50 pixels) avec un fond NON transparent..
En l'occurence, un piti plongeur dans la mer (bleu).
Sauf que des que je fous un fond uni (ici bleu, ca fait apreil avec blanc...) il me mets effectivement le plongueur mais pas le fond bleu...
On fait comment alors pour l'avoir ledit fond bleu sur un Speedbutton ?
J'ai essayé Transparent = FALSE dans les propriétés du speedbutton, sans succès...
Help pleaz
---------------
L'ingénieur chipset nortiaux : Une iFricandelle svp ! "Spa du pâté, hin!" ©®Janfynette | "La plus grosse collec vivante de bans abusifs sur pattes" | OCCT v12 OUT !