FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Logiciel de planétarium.
KGF_dll - nouvelles versions - Page 26 Emptypar Pedro Aujourd'hui à 10:37

» Un autre pense-bête...
KGF_dll - nouvelles versions - Page 26 Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
KGF_dll - nouvelles versions - Page 26 Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
KGF_dll - nouvelles versions - Page 26 Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
KGF_dll - nouvelles versions - Page 26 Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
KGF_dll - nouvelles versions - Page 26 Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
KGF_dll - nouvelles versions - Page 26 Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
KGF_dll - nouvelles versions - Page 26 Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
KGF_dll - nouvelles versions - Page 26 Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
KGF_dll - nouvelles versions - Page 26 Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
KGF_dll - nouvelles versions - Page 26 Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
KGF_dll - nouvelles versions - Page 26 Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
KGF_dll - nouvelles versions - Page 26 Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
KGF_dll - nouvelles versions - Page 26 Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
KGF_dll - nouvelles versions - Page 26 Emptypar leclode Ven 20 Sep 2024 - 19:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
Le deal à ne pas rater :
Boutique Nike : -25% dès 50€ sur TOUT le site Nike avec le code ...
Voir le deal

 

 KGF_dll - nouvelles versions

Aller en bas 
+8
JL35
Marc
papydall
Jicehel
Yannick
pascal10000
Minibug
Klaus
12 participants
Aller à la page : Précédent  1 ... 14 ... 25, 26, 27 ... 33 ... 40  Suivant
AuteurMessage
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 26 EmptySam 14 Mai 2016 - 14:05

Oups... c'est un oubli dans la doc !
Dans la doc de CreateStringGrid, au lieu de
Citation :
Les commandes de création doivent être placées dans le MEMO, une commande par ligne, selon le format suivant:
commande=valeur

Les commandes possibles sont:
Width=n
Height=n
Rows=n
Columns=n
FixedRows=n
FixedColumns=n
il faudrait lire:
Citation :
Les commandes de création doivent être placées dans le MEMO, une commande par ligne, selon le format suivant:
commande=valeur

Les commandes possibles sont:
Left=n
Top=n
Width=n
Height=n
Rows=n
Columns=n
FixedRows=n
FixedColumns=n

Cet oubli sera corrigé dans la prochaine publication. Désolé.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 26 EmptySam 14 Mai 2016 - 14:33

Y a pas de mal. 
Avec la possibilité de placer en "top" et en "left" mes objets parents deviennent inutiles.
puisque je peux, maintenant que je le sais, placer deux "StringGrid" dans le même objet.
cheers
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 26 EmptyDim 15 Mai 2016 - 23:11

KGF.dll V6.69 du 15/05/2016

Nouveautés:
- CreateSpriteInScene2D: changement d'interprétation du dernier paramètre
- diverses corrections dans la doc
- nouvelle fonction: ChangeOptionsInScene2D



Modules modifiés:
KGF.dll
KGF.chm


La doc et les sources sources sont à jour.

Les changements dans la doc concernent entre autres CreateScene2D et LoadImageList (qui retourne le nombre d'images lues en cas de succès, et non simplement zéro).

La nouvelle fonction ChangeOptionsInScene2D a 2 codes option, pour le moment? Seul le code 2 est opérationnel à ce jour, le code 1 étant en cours de mise au point/ Mais le programme ci-après utilise déjà le code 2, est c'est pour cette raison que la documentation apparaît déjà.

Pour CreateSpriteInScene2D, le dernier paramètre est l'origine de l'image du Sprite. On peut passer:
1.  adr(fichier$) ce qui charge l'image contenue dans le fichier dont le nom et chemin est dans fichier$
2.  0 ce qui charge l'image contenue dans le presse-papier
3.  1 ce qui remplit tout le sprite de couleur blanche

En passant 0, la dimension du sprite est adaptée automatiquement à celle de l'image du presse-papier.
En passant 1, la dimension du sprite reste à la taille par défaut de 100x100 pixels.

Cette modification est utilisée dans ce programme suivant, montrant la possibilité d'afficher et de déplacer des cartes de jeu. On utilise pour cela deux fichiers ILB (sauvegardes d'objets ImageList) qu'on peut télécharger sur mon WebDav, dossier Jeux\Belote\Cartes. Ce sont les fichiers:
Cartes.ilb - images des 4x13 cartes d'un jeu complet, plus deux dos de cartes (rouge et bleu), en format 71x96 pixels
Couleurs.ilb - 4 images pour trèfle, pique, coeur et caro, en format 32x32 pixels

Le programme affiche:
4 sprites fixes avec les 4 couleurs. Chaque sprite réagit sur un clic.
4 rangs de 13 cartes de l'as au roi, un rang par couleur
en cliquant sur une carte, son nom et sa couleur d'affiche en pas dans un objet Alpha. On peut déplacer n'importe quelle carte en la tirant par la souris. Les cartes ne se bloquent pas entre elles, mais elles ne pourront pas recouvrir les 4 petits sprites avec les couleurs.

Ce n'est pas un jeu, juste une démo d'affichage:
Code:
' cartes_par_Scene2D.bas

label event


dim res%, SC2D%, n%, IL1%, IL2%, f$, C1%, C2%, C3%, C4%, sp%, pret%
dim cartes%(4,13), i%, j%, s$
dim il_couleurs$ : il_couleurs$ = "Couleurs.ilb"
dim il_cartes$ : il_cartes$ = "Cartes.ilb"
pret% = 0
for i%=1 to 4
  for j%=1 to 13
    cartes%(i%,j%) = 0
  next j%
next i%


dll_on "KGF.dll"

full_space 0

edit  900 : hide 900 : on_change 900,event

alpha 901 : top 901,650 : left 901,10


IL1% = dll_call2("CreateImageList",32,32)
res% = dll_call2("LoadImageList",IL1%,adr(il_couleurs$))
IL2% = dll_call2("CreateImageList",32,32)
res% = dll_call2("LoadImageList",IL2%,adr(il_cartes$))


SC2D% = dll_call2("CreateScene2D",handle(0),0)
res% = dll_call4("SetTransparentColorOfScene2D",SC2D%,1,1,1)

n% = dll_call2("SetInterfaceOfScene2D",SC2D%,0)
dim SC2D_Panoramic%(n%)
SC2D_Panoramic%(0) = n%
SC2D_Panoramic%(1) = handle(900)
res% = dll_call2("SetInterfaceOfScene2D",SC2D%,adr(SC2D_Panoramic%))
res% = dll_call6("ResizeScene2D",SC2D%,10,10,1000,600,1)
res% = dll_call6("ChangeOptionsOfScene2D",SC2D%,2,1,0,0,0)

C1% = dll_call6("CreateSpriteInScene2D",SC2D%,10,10,0,1000,1)
res% = dll_call4("ChangeSpriteSizeInScene2D",SC2D%,C1%,32,32)
res% = dll_call6("ChangeSpriteAttributesInScene2D",SC2D%,C1%,1,1,0,0)
res% = dll_call4("ChangeSpriteImageInScene2D",SC2D%,C1%,1,IL1%)
res% = dll_call4("ChangeSpriteImageInScene2D",SC2D%,C1%,2,0)
C2% = dll_call6("CreateSpriteInScene2D",SC2D%,50,10,0,1000,1)
res% = dll_call4("ChangeSpriteSizeInScene2D",SC2D%,C2%,32,32)
res% = dll_call6("ChangeSpriteAttributesInScene2D",SC2D%,C2%,1,1,0,0)
res% = dll_call4("ChangeSpriteImageInScene2D",SC2D%,C2%,1,IL1%)
res% = dll_call4("ChangeSpriteImageInScene2D",SC2D%,C2%,2,1)
C3% = dll_call6("CreateSpriteInScene2D",SC2D%,90,10,0,1000,1)
res% = dll_call4("ChangeSpriteSizeInScene2D",SC2D%,C3%,32,32)
res% = dll_call6("ChangeSpriteAttributesInScene2D",SC2D%,C3%,1,1,0,0)
res% = dll_call4("ChangeSpriteImageInScene2D",SC2D%,C3%,1,IL1%)
res% = dll_call4("ChangeSpriteImageInScene2D",SC2D%,C3%,2,2)
C4% = dll_call6("CreateSpriteInScene2D",SC2D%,130,10,0,1000,1)
res% = dll_call4("ChangeSpriteSizeInScene2D",SC2D%,C4%,32,32)
res% = dll_call6("ChangeSpriteAttributesInScene2D",SC2D%,C4%,1,1,0,0)
res% = dll_call4("ChangeSpriteImageInScene2D",SC2D%,C4%,1,IL1%)
res% = dll_call4("ChangeSpriteImageInScene2D",SC2D%,C4%,2,3)

placer(1)
placer(2)
placer(3)
placer(4)

pret% = 1

end

event:
  if pret%=0 then return
  sp% = SC2D_Panoramic%(2)
  if sp%=C1% then message "Trèfle"
  if sp%=C2% then message "Pique"
  if sp%=C3% then message "Coeur"
  if sp%=C4% then message "Caro"
  if sp%>C4%
    i% = int((sp%-C4%-1)/13) + 1
    j% = sp% - C4% - (i%-1)*13
    if j%=1
      s$ = "As"
    else
      if j%=11
        s$ = "Valet"
      else
        if j%=12
          s$ = "Dame"
        else
          if j%=13
            s$ = "Roi"
          else
            s$ = str$(j%)
          end_if
        end_if
      end_if
    end_if
    select i%
      case 1: s$ = s$ + " de Trèfle"
      case 2: s$ = s$ + " de Pique"
      case 3: s$ = s$ + " de Coeur"
      case 4: s$ = s$ + " de Caro"
    end_select
    caption 901,s$
  end_if
  return
  
sub placer(quoi%)
  dim_local i%, c%, t%
  if cartes%(quoi%,1)<>0 then exit_sub
  c% = (quoi%-1)*13
  t% = (quoi%-1)*110 + 50
  for i%=1 to 13
    cartes%(quoi%,i%) = dll_call6("CreateSpriteInScene2D",SC2D%,10+i%*30,t%,0,0,1)
    res% = dll_call4("ChangeSpriteSizeInScene2D",SC2D%,cartes%(quoi%,i%),71,96)
    res% = dll_call6("ChangeSpriteAttributesInScene2D",SC2D%,cartes%(quoi%,i%),1,1,1,0)
    res% = dll_call4("ChangeSpriteOptionsInScene2D",SC2D%,cartes%(quoi%,i%),0,255)
    res% = dll_call4("ChangeSpriteImageInScene2D",SC2D%,cartes%(quoi%,i%),1,IL2%)
    res% = dll_call4("ChangeSpriteImageInScene2D",SC2D%,cartes%(quoi%,i%),2,c%+i%-1)
  next i%

end_sub
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 26 EmptyMer 18 Mai 2016 - 10:47

Nouvelle version de la doc (KGF.chm sur mon site, sur le site miroir, sur mon WebDav et dans la documentation en ligne):
il y a des explications supplémentaires pour la fonction GridFunction concernant la notion d'attributs actifs. Les attributs actifs sont définis par l'action 9 de GridFunction, et utilisés de façon implicite par les actions 2, 3, 4, 6 et 7.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 26 EmptyJeu 19 Mai 2016 - 0:39

J' aurai deux petites supplique pour le StringGrid.

La fonction 1 permet d' écrire directement dans les cellules, c' est super.

Mais, car il y a un mais, cette fonction ouvre tout le StringGrid.
Il serait peut être bien de pouvoir protéger certaines cellules en spécifiant les colonnes ou lignes autorisées.

La deuxième, est les retours de ce que l' utilisateur à fait dans une cellule ouverte à l' écriture direct.
Je ne vois pas comment récupéré si il y a eu un changement dans une cellule ou pas.

Maintenant, un petit signalement.

Lorsqu' il y a écriture direct dans une cellule et que l' on utilise la fonction delete, on a droit à un message :
KGF_dll - nouvelles versions - Page 26 Captur25

voilà la procédure de fermeture :

Code:
sub Quitter()
    dim_local res%
    if SG%(1)>0 : DeleteStringGrid(SG%(1)) : end_if
    if SG%(2)>0 : DeleteStringGrid(SG%(2)) : end_if
    res% = dll_call1("KillProcessByHandle",handle(0))
end_sub

ce message me vient si j' ai écrit directement dans un StringGrid
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 26 EmptyJeu 19 Mai 2016 - 1:13

Pour le plantage signalé:
Citation :
ce message me vient si j' ai écrit directement dans un StringGrid
tu veux dire que tu as utilisé la fonction GridFunction avec le code 1, puis tu as saisi une donnée directement dans la cellule, puis tu supprimes le Grid, n'est-ce pas ? Ou est-ce que j'ai mal compris ?

Citation :
Je ne vois pas comment récupéré si il y a eu un changement dans une cellule ou pas.
Tu ne récupères pas d'évènement dans l'objet EDIT associé ?

Je vais faire un petit code pour tester cela..
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 26 EmptyJeu 19 Mai 2016 - 1:49

C' est exactement cela.

Je créé un grid avec autorisation de saisi direct
je saisi directement dans une cellule
et je le delete en fermant l' appli.

mais le message ne vient que si je fais une saisi direct.
si je passe par la fonction d' écriture dans une cellule je ne l' ai pas 
et ce même si l' autorisation est active.

Pour le reste, mon edit étant bien caché, j' avoue que je n' ai pas regardé... Embarassed


Edit :

Dans l' edit, je récupère :
- le numéro du StringGrid
- le clic
- l' adresse de la cellule.
mais comme on peut saisir directement dès la sélection de la cellule
si on entre un texte en saisi direct, on a rien qui indique une modification de la cellule.
Si on a un formatage lié à ce que contient la cellule, cela tombe à l' eau.
De même si on a un calcul lié à cette cellule. si l' utilisateur modifie un chiffre, le calcul sera faux.
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 26 EmptyJeu 19 Mai 2016 - 2:09

Citation :
mais si on entre un texte en saisi direct, on a rien qui indique une modification de la cellule.
.
Je peux ajouter un signalement via le EDIT pour indiquer un changement du texte d'une cellule en saisie directe. Cela viendra alors chaque fois que la cellule est modifiée, c'est-à-dire à chaque caractère, touche modifiante comme la gomme etc.

Je travaille sur le plantage, et cette modiif viendra en même temps que la correction.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 26 EmptyJeu 19 Mai 2016 - 2:27

Je suis preneur, il faudra juste penser à faire un off_change ....on_change sur l' edit le temps du traitement.
Comme c' est assez rapide, cela ne devrait pas créer de problèmes.

Il y a un autre truc mais je ne suis pas sûr que tu y puisse quelque chose.
Quand on insère une ligne, le formatage des couleurs ne suit pas.
On doit tout re-formater.
J' ai fait une procédure pour cela mais cela provoque une sorte de scintillement.

Mais bon, le plus important est le "mini bug" et de récupérer un changement dans la cellule en saisi direct.
Smile

Je te dirai bien qu' il ne faut récupérer que la validation mais elle se fait aussi sur un changement de cellule... Wink
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 26 EmptyJeu 19 Mai 2016 - 4:04

Je crois que je me heurte, dans mes tests, au fameux problème du TERMINATE. Et c'est sûrement également ton problème. Chez moi, même ce code ne marche pas:
Code:
label sortir

width 0,800
button 1 : top 1,10 : left 1,700 : caption 1,"Sortir" : on_click 1,sortir
end

sortir:
  message "On sort..."
  terminate
Plantage...

Alors, je te conseille de mettre
Code:
res% = dll_call1("KillProcessByHandle",handle(0))
à la place du TERMINATE. Et en attendant que Jack corrige ce problème de TERMINATE, je vais coder les évènements concernant les changements d'une cellule en saisie directe.

D'ailleurs, au lieu de coder
Code:
    if SG%(1)>0 : DeleteStringGrid(SG%(1)) : end_if
    if SG%(2)>0 : DeleteStringGrid(SG%(2)) : end_if
je te conseille
Code:
    if SG%(1)<>0 : DeleteStringGrid(SG%(1)) : end_if
    if SG%(2)<>0 : DeleteStringGrid(SG%(2)) : end_if
Est-ce que DeleteStringGrid est une SUB dans ton code ? Elle est codée comment ?
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 26 EmptyJeu 19 Mai 2016 - 12:00

Je n' utilise pas terminate mais déjà la fonction de la dll "KillProcessByHandle"
Code:
sub Quitter()
    dim_local res%
    if SG%(1)>0 : DeleteStringGrid(SG%(1)) : end_if
    if SG%(2)>0 : DeleteStringGrid(SG%(2)) : end_if
    res% = dll_call1("KillProcessByHandle",handle(0))
end_sub

Les deux autres fonctions sont toutes simple :
Code:
sub DeleteStringGrid(obj%)
   dim_local res%
   res% = dll_call1("DeleteStringGrid",obj%)
end_sub

le message vient dès le delete du premier StringGrid et seulement lorsque j' ai saisi directement dans une cellule ou même
placé le curseur à l' interieur.
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 26 EmptyJeu 19 Mai 2016 - 12:20

Alors, prends s'il te plaît, KGF.dll sur mon WebDav, dossier DLLs. Puis, essaie ce code:
Code:
label click, sortir

dim l%, c%, res%, status%, SG%

dll_on "KGF.dll"

width 0,800
button 1 : top 1,10 : left 1,700 : caption 1,"Sortir" : on_click 1,sortir

alpha 90 : top 90,300 : left 90,10
edit 98 : hide 98 : on_change 98,click
memo 99 : hide 99

item_add 99,"Width=660"
item_add 99,"Height=260"
item_add 99,"Rows=10"
item_add 99,"Columns=10"
item_add 99,"FixedRows=1"
item_add 99,"FixedColumns=1"

SG% =  dll_call3("CreateStringGrid",handle(0),handle(99),handle(98))
res% = DLL_call6("GridFunction",SG%,1,1,0,0,0)
end



click:
  res% = dll_call6("GridFunction",SG%,14,adr(c%),adr(l%),adr(status%),0)
  caption 90,"("+str$(l%)+","+str$(c%)+"): "+str$(res%)
  return

sortir:
  res% = dll_call1("DeleteStringGrid",SG%)
  message "On sort..."
'  terminate
  res% = dll_call1("KillProcessByHandle",handle(0))

Je ne constate aucune anomalie.

Je te conseille, encore une fois, de produire un petit code, du genre de celui ci-dessus, avec lequel tu pourrais mettre le problème en évidence. Avec les codes que je peux mettre en oeuvre, ça marche. Cela vient donc d'éléments plus complexes présents dans on code, et il faudra bien, en simplifiant petit à petit, arriver à déterminer le programme minimum qui peut produire le crash. Sinon, ça va être très dur.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 26 EmptyJeu 19 Mai 2016 - 14:36

Faire un petit code c' est bien, ton petit code fonctionne aussi chez moi, mais on zappe toutes les autres fonctions utilisées et dont l' interaction peut être la source du crash.
J' ai fait une sub pour re formater, elle fonctionne sur les 5 premières utilisations, 
à la sixième c' est l' apocalypse (problème de canvas d' après ce qu' il dit ).
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 26 EmptyJeu 19 Mai 2016 - 22:14

J'ai travaillé sur ta remarque:
Citation :
Il y a un autre truc mais je ne suis pas sûr que tu y puisse quelque chose.
Quand on insère une ligne, le formatage des couleurs ne suit pas.
Et tu as raison... J'ai commencé à écrire une routine d'ajustement des paramétrages en cas d'insertion/suppression de lignes/colonnes. Mais je ne l'ai pas terminée, et en l'état, elle ne fait rien. Donc, ton constat est juste et me rappelle à l'ordre.

Je vais finir cela.

EDIT

La gestion des attributs (cadrage, couleurs, présentation typographique etc) est conçue pour être utilisée d'une manière particulière. Si on le sait, ça paraît évident, et c'est pourquoi j'ai omis de le documenter dans KGF.chm. C'est une erreur, et je vais corriger cela. Mais voici les grandes lignes:
Citation :
1. les attributs sont mémorisés dans une liste propre à chaque objet Grid.
2. Ils sont mémorisés dans l'ordre chronologique de création.
3. Ils sont exploités dans l'ordre chronologique de création
.
Ceci a certaines conséquences. Si deux définitions se recouvrent totalement ou partiellement, c'est la définition créée en dernier qui sera effective sur les parties communes. Exemples:
1. définir la ligne 3 avec un fond bleu et cadrage à droite. Plus tard, définir la ligne 3 avec un fond rouge et un cadrage à gauche. Résultat: la ligne 3 aura un fond rouge et sera cadrée à gauche. La première définition sera entièrement "écrasée" par la seconde.
2.  définir la ligne 3 avec un fond bleu et cadrage à droite. Plus tard, définir la colonne 7 avec un fond rouge et un cadrage à gauche. Résultat: la ligne 3 aura un fond bleu et sera cadrée à droite. Toute la colonne 7 aura un fond rouge et sera cadrée à gauche. Et donc, tout naturellement, la cellule ligne 3 colonne 7 aura un fond rouge et sera cadrée à gauche.
3.  définir la colonne 7 avec un fond rouge et un cadrage à gauche. Plus tard, définir la ligne 3 avec un fond bleu et cadrage à droite. Résultat: la ligne 3 aura un fond bleu et sera cadrée à droite. Toute la colonne 7 aura un fond rouge et sera cadrée à gauche. Et donc, tout naturellement, la cellule ligne 3 colonne 7 aura un fond bleu et sera cadrée à droite.

Et donc, mon conseil est de procéder de la manière suivante:
Citation :
1. définir en une fois, pour tout le grid (colonne=-1,ligne=-1) les options générales, celles qui devront s'appliquer partout sauf des cas particuliers
2. définir ensuite les options pour les lignes fixes (colonne=-1, ligne=n)
3. définir ensuite les options pour les colonnes fixes (colonne=n, ligne=-1)
4. définir ensuite, en utilisant les options "sans parties fixes", les options pour les colonnes particulières (toujours avec colonne=n, ligne=-1)
Ainsi, même dans ls situation actuelle, tu peux insérer des lignes dans perturber la cohérence de l'ensemble. Le problème ne se pose alors que si en bas de tableau, dans la ou les dernières lignes, tu souhaites utiliser des options différentes, pour une ligne de totaux, par exemple. Et ce sont ces cas de figure que je vais corriger.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 26 EmptyDim 22 Mai 2016 - 22:06

Klaus,

Où dois placé la fonction 31 pour qu' elle fonctionne (suppression de la scroll_bar ) ?
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 26 EmptyDim 22 Mai 2016 - 22:22

Directement après CreateStringGrid, tu places
Code:
  res% = DLL_call6("GridFunction",SG%,31,1,0,0,0)  : ' pour autoriser les scrollbars
ou
Code:
  res% = DLL_call6("GridFunction",SG%,31,0,0,0,0)  : ' pour interdire les scrollbars

Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 26 EmptyLun 23 Mai 2016 - 1:23

Ok Klaus, mais la doc est à modifier :
KGF_dll - nouvelles versions - Page 26 Captur26
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 26 EmptyLun 23 Mai 2016 - 8:32

D'accord... le mot "action" est à remplacer par "par1"...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 26 EmptyLun 23 Mai 2016 - 9:58

Mise à jour de la doc (KGF.chm sur tous les sites, ainsi que la doc en ligne).

Cette mise à jour concerne la correction et le complément des pages pour certaines fonctions des objets StringGrid et Scene2D.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 26 EmptyLun 23 Mai 2016 - 11:07

heu...non, 

la correction à faire portait sur la valeur du paramètre pour que la scroll_bar soit invisible.
Dans la doc par1% = 2 alors que la valeur qui fonctionne est 0.
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 26 EmptyLun 23 Mai 2016 - 11:16

heu... si !

Je ne vois pas où serait l'erreur:
KGF_dll - nouvelles versions - Page 26 Aa127

Le code suivant n'affiche pas les scrollbars:
Citation :
  SG% = dll_call3("CreateStringGrid",handle(0),handle(SGmemo%),handle(SGedit%))
  res% = DLL_call6("GridFunction",SG%,31,0,0,0,0)  : ' remplacer 1 par 0 pour interdire les scrollbars
Le code suivant affiche les scrollbars:
Citation :
  SG% = dll_call3("CreateStringGrid",handle(0),handle(SGmemo%),handle(SGedit%))
  res% = DLL_call6("GridFunction",SG%,31,1,0,0,0)  : ' remplacer 1 par 0 pour interdire les scrollbars
Où est le problème ?

EDIT

Oups... c'est 0 pour invosible, pas 2 ! Je vais corriger !

Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 26 EmptyLun 23 Mai 2016 - 11:20

Dans le tableau, colonne par1% :

1 = visible
2 = invisible

ce devrait être :

0 = invisible
1 = visible

Wink
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 26 EmptyLun 23 Mai 2016 - 11:22

Dans le tableau, quand mon cerveau à l' idée de le regarder,
je cherche des valeurs et là...
Laughing
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 26 EmptyLun 23 Mai 2016 - 11:22

Oui, je viens de le voir (regarde mon EDIT ci-dessus). C'est d'autant plus bête que dans la version anglaise en bas de page, le texte est correct...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 26 EmptyLun 23 Mai 2016 - 11:30

Rien de grave Klaus, on s' est croisé.

Le but est que les utilisateurs aient les bonnes infos, il est atteint.
Revenir en haut Aller en bas
Contenu sponsorisé





KGF_dll - nouvelles versions - Page 26 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 26 Empty

Revenir en haut Aller en bas
 
KGF_dll - nouvelles versions
Revenir en haut 
Page 26 sur 40Aller à la page : Précédent  1 ... 14 ... 25, 26, 27 ... 33 ... 40  Suivant
 Sujets similaires
-
» Nouvelles versions
» KGF_dll - nouvelles versions
» Synedit_Editor - nouvelles versions
» KGF_dll - nouvelles versions
» KGF_dll - nouvelles versions

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: Activité des sites créés par les Panoramiciens. :: Le site de Klaus-
Sauter vers: