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
» demande explication KGF pour imprimer en mm
KGF_dll - nouvelles versions - Page 2 Emptypar JL35 Aujourd'hui à 17:28

» Petit passage furtif
KGF_dll - nouvelles versions - Page 2 Emptypar Froggy One Hier à 14:26

» SPIN et aide langage (résolu)
KGF_dll - nouvelles versions - Page 2 Emptypar leclode Sam 23 Mar 2024 - 15:20

» Aide-mémoire des mots-clés Panoramic
KGF_dll - nouvelles versions - Page 2 Emptypar papydall Mer 20 Mar 2024 - 21:23

» Je ne comprend pas pourquoi la largeur de la scene 3d change
KGF_dll - nouvelles versions - Page 2 Emptypar Marc Mar 12 Mar 2024 - 20:06

» Comment télécharger panoramic?
KGF_dll - nouvelles versions - Page 2 Emptypar lepetitmarocain Sam 9 Mar 2024 - 13:31

» @lepetitmarocain <==> KGFGrid
KGF_dll - nouvelles versions - Page 2 Emptypar Klaus Dim 3 Mar 2024 - 9:59

» Tangram-Toukaré
KGF_dll - nouvelles versions - Page 2 Emptypar jjn4 Mer 28 Fév 2024 - 18:12

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
KGF_dll - nouvelles versions - Page 2 Emptypar jjn4 Mer 28 Fév 2024 - 18:09

» KGF_dll - nouvelles versions
KGF_dll - nouvelles versions - Page 2 Emptypar Klaus Mer 28 Fév 2024 - 17:01

» Mes souhaits d'amélioration de Panoramic.
KGF_dll - nouvelles versions - Page 2 Emptypar Pedro Lun 26 Fév 2024 - 18:12

» Testez-votre-QI
KGF_dll - nouvelles versions - Page 2 Emptypar jjn4 Dim 25 Fév 2024 - 17:12

» Utilisation d'Élip
KGF_dll - nouvelles versions - Page 2 Emptypar jjn4 Sam 24 Fév 2024 - 18:33

» Récapitulatif ludothèque panoramic jjn4
KGF_dll - nouvelles versions - Page 2 Emptypar jjn4 Sam 24 Fév 2024 - 18:11

» Générateur de mots de passe
KGF_dll - nouvelles versions - Page 2 Emptypar mindstorm Mar 20 Fév 2024 - 20:09

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Mars 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
25262728293031
CalendrierCalendrier
Le deal à ne pas rater :
Coffret dresseur d’élite ETB Pokémon EV06 Mascarade Crépusculaire
56.90 €
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, 2, 3 ... 21 ... 40  Suivant
AuteurMessage
pascal10000

pascal10000


Nombre de messages : 812
Localisation : Troyes
Date d'inscription : 05/02/2011

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptyMar 24 Nov 2015 - 7:22

bjr yes klaus
mrc cela a été vite ton intervention et très utile
bonne journée a tout le monde

" tu peux tomber sur la cellule interdite en saisie. Et est-ce que ton mécanisme la protège dans ce cas ? Pas sûr "
j'ai fais des testes a première vu pas de prb
Revenir en haut Aller en bas
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptyMar 24 Nov 2015 - 9:35

Citation :
j'ai fais des testes a première vu pas de prb
L'essai à faire: clquer dans une cellule juste à côté de la cellule à protéger. Puis, utiliser la flèche appropriée pour aller sur la cellule en question. Si elle est protégée lors d'un tel accès, c'est bien... Et qu'est-ce qui se passe si dans ton système, après avoir interdit la saisie, tu sors du GRID vers un autre objet, pujis tu rentres à nouveau, mais pas par un clic mais par un ou plusieurs TAB ? Est-ce que la première cellule dans laquelle tu tobes, peut être saisie ou est-ce que le mode de saisie reste toujours interdit ? Ce sont ce genre de problèmes qui font croire à un bug, plus tard,, lorsqu'on tombe dessus en cours d'exploitation.

EDIT

J'ai fait une version opérationnelle de tes deux morceaux de code:
Code:
label gridedit
dim res%, x%
grid 6
' parent 6,2
top 6,2
width 6,178
height 6,330
grid_row 6,1 : ' enleve row fix
grid_column 6,2
grid_column_width 6,88
grid_row_height 6,21
grid_row 6,13
on_click 6,gridedit
dll_on "KGF.dll"
end

gridedit:
x%=grid_y_to_row(6,mouse_y_position(6))
if x%=1
res% = dll_call6("GridFunction",object_internal(6),1,0,0,0,0)
else
res% = dll_call6("GridFunction",object_internal(6),1,1,0,0,0)
end_if
return

Et je constate bien le problème que je soulève:
1. clique dans la première ligne: certes, la saisie est bloquée. Mais fais une flèche en bas, et la saisie est toujours bloqiée...
2. clique dans la deuxième ligne: certes, la saisie est autorisée. Mais fais une flèche en haut, et la saisie est toujours autorisée...

Alors, essaie comme ceci:
Code:
dim res%, x%
grid 6
' parent 6,2
top 6,2
width 6,178
height 6,330
grid_row 6,1 : ' enleve row fix
grid_column 6,2
grid_column_width 6,88
grid_row_height 6,21
grid_row 6,13
dll_on "KGF.dll"
res% = dll_call6("GridFunction",object_internal(6),1,1,0,0,0)
res% = dll_call6("GridFunction",object_internal(6),12,1,1,2,1)
end
Cette fois, la ligne 1 ne peut plus du tout être accédée, ni par un clic, ni par une flèche !
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptyMar 24 Nov 2015 - 14:02

Nouvelle version:
KGF.dll V5.48 du 24/11/2015

Nouveautés:
- ajout code opération 13 pour fonction GridFunction

Modules modifiés:
KGF.dll
KGF.chm


La doc et les sources sont à jour.

Ce code est identique au code 12, mais à unn détail près: Le code 12 bloque totalement toutes les cellules d'un rectangle. On ne peut absolument pas s'y positionner. Le code 13 permet le positionnement par la souris ou par les flèches, mais interdit la modification, même si celle-ci est globalement autorisée pour le grid, via le code 1.

Voici le programme de démo adapté à cela, avec le premier rectangle totalement protégé et le second protégé en écriture, alors que le reste du tableau est ouvert à tout:
Code:
' test_GridFunction_code_12.bas

' Ce programme teste le code 12 de GridFunction.
' Ce code permet de définir des rectangles dans un GRID
' pour lesquels la sélection est interdite.

dim res%, l%, c%, RGB%, s$

width 0,690 : height 0,310
grid 1 : width 1,660 : height 1,260
  grid_row 1,10 : grid_column 1,10
for l%=1 to 10
  for c%=1 to 10
    grid_write 1,l%,c%,str$(l%)+","+str$(c%)
  next c%
next l%

width 0,920
memo 2 : width 2,200 : left 2,width(1)+20
height 2,height(1) : font_name 2,"Courier"
display

dll_on "KGF.dll"

' première zone interdite totalement
res% = dll_call6("GridFunction",object_internal(1),12,3,2,5,3)
' seconde zone interdite en saisie uniquement
res% = dll_call6("GridFunction",object_internal(1),13,7,4,8,5)

' activer les couleurs personnalisées
 res% = dll_call6("GridFunction",object_internal(1),8,1,0,0,0)

RGB(255,200,200)
for l%=2 to 3
  for c%=3 to 5
    ' couleur de la première zone interdite
    res% = dll_call6("GridFunction",object_internal(1),2,c%,l%,RGB%,0)
  next c%
next l%

RGB(200,200,255)
for l%=4 to 5
  for c%=7 to 8
    ' couleur de la seconde zone interdite
    res% = dll_call6("GridFunction",object_internal(1),2,c%,l%,RGB%,0)
  next c%
next l%

' chercher la map du grid
s$ = string$(3000," ")
res% = dll_call2("GetGridCellMap",object_internal(1),adr(s$))
text 2,trim$(s$)

' autoriser la saisie*$
res% = dll_call6("GridFunction",object_internal(1),1,1,0,0,0)

end

sub RGB(R%,G%,B%) : ' produire une valeur RGB valide
 RGB% = (B%*256+R%)*256+G%
end_sub
Et une capture, montrant le résultat de GetGridCellMap dans le mémo de droite:
KGF_dll - nouvelles versions - Page 2 Aa117
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
pascal10000

pascal10000


Nombre de messages : 812
Localisation : Troyes
Date d'inscription : 05/02/2011

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptyMar 24 Nov 2015 - 17:05

oui effectivement dès que je click sur un autre objet
la case redevient éditable
je vais télécharger ta dernière version et je pense que ce sera bon
mrc encore klaus
Revenir en haut Aller en bas
pascal10000

pascal10000


Nombre de messages : 812
Localisation : Troyes
Date d'inscription : 05/02/2011

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptyMer 25 Nov 2015 - 8:15

bjr a tous

klaus
en te remerciant c nickel chrome!
bonne journée
Revenir en haut Aller en bas
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptyMer 25 Nov 2015 - 13:00

Nouvelle version:
KGF.dll V5.49 du 25/11/2015

Nouveautés:
- ajout code opération 14 pour fonction GridFunction
- sdolution d'un problème dans GridFunction code 1


Modules modifiés:
KGF.dll
KGF.chm


La doc et les sources sont à jour.

Le code 14 permet de retourner les coordonnées exactes de la dernière cellule sélectionnée, que ce soit par un clic ou en entrant dans la cellule par une des flèches. De plus, cette fonction retourne une information sdur le statut de la cellule (normale, libre, protégée ou bloquée).

Le problème dans GrifFunction code 1 est ancien, mais ce n'est ni un bug de KGF.dll ni un bug dans Panoramic. C'est un bug dans l'inmplémentation de l'objet TStringGrid dans la bibliothèque VCL de Delphi. Ce bug fait que lors de l'utilisation du mode "édition" dans une cellule d'un GRID, le clic de la souris est intercepté par un objet EDIT créé automatiquement par le GRID et placé au-dessus de la cellule à éditer. Et la conséquence, c'est que l'évènement 0nLeftMouseDown du GRID est déclenché en retard par rapport au changement de coordonnées du clic, si bien que les coordonnées fournies par cet évènement en Delphi sont celles du clic précédent. Et tout naturellement, les fonctions Panoramic MOUSE_X_LEFT_DOWN et MOUSE_Y_LEFT_DOWN retournent les coordonnées du clic précédent et non celles du dernier clic. Je répère: ceci est dû à un bug dans Delphi, et non à Panoramic ou KGF.dll.

Le nouveau code 14 de GridFunction offre la solution, puisqu'il retournera toujours les bonnes coordonnées, quelque soit le cas, avec ou sans utilisation du mode "édition" dans l'objet GRID. La doc des fonctions de StringGrid (rubrique "objets") explique cela en détail, avec les consequences sur le codage, qui accessoirement devient plus simple - une seule ligne au lieu de 4 ! Lire attentivement cette doc !

Voici le programme de démo qui en montre l'utilisation. Les coordonnées et le statut de la cellule cliquée sont affichées dans la caption de la fenêtre:
Code:
' test_GridFunction_code_12.bas

' Ce programme teste le code 12 de GridFunction.
' Ce code permet de définir des rectangles dans un GRID
' pour lesquels la sélection est interdite.

label clic
dim res%, l%, c%, RGB%, s$, x%, y%, status%
dim stat$(3)
  stat$(0) = "Normal"
  stat$(1) = "Libre"
  stat$(2) = "Sélectionnable"
  stat$(3) = "Bloqué"

width 0,690 : height 0,310
grid 1 : width 1,660 : height 1,260
  grid_row 1,10 : grid_column 1,10
  on_click 1,clic
for l%=1 to 10
  for c%=1 to 10
    grid_write 1,l%,c%,str$(l%)+","+str$(c%)
  next c%
next l%

width 0,920
memo 2 : width 2,200 : left 2,width(1)+20
height 2,height(1) : font_name 2,"Courier"
display

dll_on "KGF.dll"

' première zone interdite totalement
res% = dll_call6("GridFunction",object_internal(1),12,3,2,5,3)
' seconde zone interdite en saisie uniquement
res% = dll_call6("GridFunction",object_internal(1),13,7,4,8,5)

' activer les couleurs personnalisées
res% = dll_call6("GridFunction",object_internal(1),8,1,0,0,0)

RGB(255,200,200)
for l%=2 to 3
  for c%=3 to 5
    ' couleur de la première zone interdite
    res% = dll_call6("GridFunction",object_internal(1),2,c%,l%,RGB%,0)
  next c%
next l%

RGB(200,200,255)
for l%=4 to 5
  for c%=7 to 8
    ' couleur de la seconde zone interdite
    res% = dll_call6("GridFunction",object_internal(1),2,c%,l%,RGB%,0)
  next c%
next l%

' chercher la map du grid
s$ = string$(3000," ")
res% = dll_call2("GetGridCellMap",object_internal(1),adr(s$))
text 2,trim$(s$)

' autoriser la saisie*$
res% = dll_call6("GridFunction",object_internal(1),1,1,0,0,0)

end

sub RGB(R%,G%,B%) : ' produire une valeur RGB valide
 RGB% = (B%*256+R%)*256+G%
end_sub

clic:
  res% = dll_call6("GridFunction",object_internal(1),14,adr(x%),adr(y%),adr(status%),0)
  caption 0, "click colonne "+str$(x%) +" ligne "+str$(y%)+"  "+stat$(status%+1)
  return

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

pascal10000


Nombre de messages : 812
Localisation : Troyes
Date d'inscription : 05/02/2011

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptyMer 25 Nov 2015 - 14:52

klaus

dans les exe une petite errur est présente

Code:
label 17      <--------- Erreur au lieu de click

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

 grid 17 : on_click 17,clic

 dll_on "KGF.dll"

 end

 

 click:

  res% = dll_call6("GridFunction",object_internal(17),14,adr(c%),adr(l%),adr(status%),0)

  return
Revenir en haut Aller en bas
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptyMer 25 Nov 2015 - 15:02

Merci, Pascal10000 - Je corrigerai !
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptyMer 25 Nov 2015 - 22:18

Nouvelle version:
KGF.dll V5.50 du 25/11/2015

Nouveautés:
- correction d'un bug dans SearchStringList si liste créé avec code 0

Modules modifiés:
KGF.dll
KGF.chm
(pour correction exemple des StringGrid, pas StringList...

La doc et les sources sont à jour.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptyJeu 26 Nov 2015 - 11:05

Nouvelle version:
KGF.dll V5.51 du 26/11/2015

Nouveautés:
- correction d'un bug dans SearchStringList si liste créé avec code 0

Modules modifiés:
KGF.dll

La doc est incjangée. Les sources sont à jour.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptyVen 27 Nov 2015 - 10:23

Nouvelle version:
KGF.dll V5.52 du 27/11/2015

Nouveautés:
- ajout des codes 15 et 16 à GridFunction

Modules modifiés:
KGF.dll
KGF.chm


La doc et les sources sont à jour.

Cette version apporte un ajout majeur ! Dans un objet GRID, on peut maintenant avoir des cellules qui sont représentées comme des cases à cocher, et les données de la cellule représentent le libellé de la case à cocher. Un clic dans une telle cellule inverse l'état de la case à cocher. La case à cocher peut être affichée à gauche du libellé (code 15) ou à droite du libellé (code 16). L'effet est spectaculaire !

Voici le programme de démo, avec deux régions de cases à cocher:
Code:
' test_GridFunction_code_12.bas

' Ce programme teste le code 12 de GridFunction.
' Ce code permet de définir des rectangles dans un GRID
' pour lesquels la sélection est interdite.

label clic
dim res%, l%, c%, RGB%, s$, x%, y%, status%
dim stat$(3)
  stat$(0) = "Normal"
  stat$(1) = "Libre"
  stat$(2) = "Sélectionnable"
  stat$(3) = "Bloqué"

width 0,690 : height 0,310
grid 1 : width 1,660 : height 1,260
  grid_row 1,10 : grid_column 1,10
  on_click 1,clic
for l%=1 to 10
  for c%=1 to 10
    grid_write 1,l%,c%,str$(l%)+","+str$(c%)
  next c%
next l%

width 0,920
memo 2 : width 2,200 : left 2,width(1)+20
height 2,height(1) : font_name 2,"Courier"
display

dll_on "KGF.dll"

' première zone interdite totalement
res% = dll_call6("GridFunction",object_internal(1),12,3,2,5,3)
' seconde zone interdite en saisie uniquement
res% = dll_call6("GridFunction",object_internal(1),13,7,4,8,5)
' troisième zone CheckBox à gauche
res% = dll_call6("GridFunction",object_internal(1),15,4,6,4,9)
' quatrième zone CheckBox à droitge
res% = dll_call6("GridFunction",object_internal(1),16,6,7,9,8)

' activer les couleurs personnalisées
res% = dll_call6("GridFunction",object_internal(1),8,1,0,0,0)

RGB(255,200,200)
for l%=2 to 3
  for c%=3 to 5
    ' couleur de la première zone interdite
    res% = dll_call6("GridFunction",object_internal(1),2,c%,l%,RGB%,0)
  next c%
next l%

RGB(200,200,255)
for l%=4 to 5
  for c%=7 to 8
    ' couleur de la seconde zone interdite
    res% = dll_call6("GridFunction",object_internal(1),2,c%,l%,RGB%,0)
  next c%
next l%

' chercher la map du grid
s$ = string$(3000," ")
res% = dll_call2("GetGridCellMap",object_internal(1),adr(s$))
text 2,trim$(s$)

' autoriser la saisie
res% = dll_call6("GridFunction",object_internal(1),1,1,0,0,0)

end

sub RGB(R%,G%,B%) : ' produire une valeur RGB valide
 RGB% = (B%*256+R%)*256+G%
end_sub

clic:
  res% = dll_call6("GridFunction",object_internal(1),14,adr(x%),adr(y%),adr(status%),0)
  caption 0, "click colonne "+str$(x%) +" ligne "+str$(y%)+"  "+stat$(status%+1)+"  ["+grid_read$(1,y%,x%)+"]"
  return
Et voici le résultat:
KGF_dll - nouvelles versions - Page 2 Aa118
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
pascal10000

pascal10000


Nombre de messages : 812
Localisation : Troyes
Date d'inscription : 05/02/2011

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptyVen 27 Nov 2015 - 10:54

bjr klaus
ça c une bonne nouvelle que tu nous offre!
merci bcp
Revenir en haut Aller en bas
Jicehel

Jicehel


Nombre de messages : 5947
Age : 51
Localisation : 77500
Date d'inscription : 18/04/2011

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptyVen 27 Nov 2015 - 11:01

Pas mal, pas mal Wink
Revenir en haut Aller en bas
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptyVen 27 Nov 2015 - 12:57

Nouvelle version:
KGF.dll V5.53 du 27/11/2015

Nouveautés:
- pour codes 15 et 16 de GridFunction: respect des bloquages en positionnement et/ou en édition pour les CheckBox

Modules modifiés:
KGF.dll

La doc est inchangée. Les sources sont à jour.

Cette version permet de placer des cellules "case à cocher" dans une zone "bloquée" ou "interdite en saisie" (établies par les codes 12 et 13), tout en respectant ces intedictions. Ceci complète le fonctionnement de cette nouveauté. On peut définir les zones protégées et/ou les zones des cases à cocher indépendemment, dans n'importe quel ordre. Voici le code:
Code:
' test_GridFunction_code_12.bas

' Ce programme teste le code 12 de GridFunction.
' Ce code permet de définir des rectangles dans un GRID
' pour lesquels la sélection est interdite.

label clic
dim res%, l%, c%, RGB%, s$, x%, y%, status%
dim stat$(3)
  stat$(0) = "Normal"
  stat$(1) = "Libre"
  stat$(2) = "Sélectionnable"
  stat$(3) = "Bloqué"

width 0,690 : height 0,310
grid 1 : width 1,660 : height 1,260
  grid_row 1,10 : grid_column 1,10
  on_click 1,clic
for l%=1 to 10
  for c%=1 to 10
    grid_write 1,l%,c%,str$(l%)+","+str$(c%)
  next c%
next l%

width 0,920
memo 2 : width 2,200 : left 2,width(1)+20
height 2,height(1) : font_name 2,"Courier"
display

dll_on "KGF.dll"

' première zone interdite totalement
res% = dll_call6("GridFunction",object_internal(1),12,3,2,5,3)
' seconde zone interdite en saisie uniquement
res% = dll_call6("GridFunction",object_internal(1),13,7,4,8,5)
' troisième zone CheckBox à gauche
res% = dll_call6("GridFunction",object_internal(1),15,4,6,4,9)
' quatrième zone CheckBox à droite
res% = dll_call6("GridFunction",object_internal(1),16,6,7,9,8)
' Cinquième zone CheckBox à gauche dans zone interdite
res% = dll_call6("GridFunction",object_internal(1),15,4,2,4,3)
' Sixième zone CheckBox à droite dans zone protégée
res% = dll_call6("GridFunction",object_internal(1),15,7,4,7,5)


' activer les couleurs personnalisées
res% = dll_call6("GridFunction",object_internal(1),8,1,0,0,0)

RGB(255,200,200)
for l%=2 to 3
  for c%=3 to 5
    ' couleur de la première zone interdite
    res% = dll_call6("GridFunction",object_internal(1),2,c%,l%,RGB%,0)
  next c%
next l%

RGB(200,200,255)
for l%=4 to 5
  for c%=7 to 8
    ' couleur de la seconde zone interdite
    res% = dll_call6("GridFunction",object_internal(1),2,c%,l%,RGB%,0)
  next c%
next l%

' chercher la map du grid
s$ = string$(3000," ")
res% = dll_call2("GetGridCellMap",object_internal(1),adr(s$))
text 2,trim$(s$)

' autoriser la saisie
res% = dll_call6("GridFunction",object_internal(1),1,1,0,0,0)

end

sub RGB(R%,G%,B%) : ' produire une valeur RGB valide
 RGB% = (B%*256+R%)*256+G%
end_sub

clic:
  res% = dll_call6("GridFunction",object_internal(1),14,adr(x%),adr(y%),adr(status%),0)
  caption 0, "click colonne "+str$(x%) +" ligne "+str$(y%)+"  "+stat$(status%+1)+"  ["+grid_read$(1,y%,x%)+"]"
  return

Et voici une capture avec 2 zones protégées et 4 zones de cases à cocher:
KGF_dll - nouvelles versions - Page 2 Aa119
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Minibug

Minibug


Nombre de messages : 4566
Age : 57
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptyVen 27 Nov 2015 - 13:52

très bien Klaus toutes ces nouvelles fonctions sur le grid.

Dis moi, y a t il une possibilité avec KGF de fusionner des cellules ensembles.
C'est juste pour l'info... Je te remercie par avance de ta réponse.
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptyVen 27 Nov 2015 - 14:29

@Mnibug:
Il est possible de faire la fusion visuelle de deux ou plusieurs cellules, plus généralement un rectangle de cellules. Cela se fait par le même mécanisme que celui que j'ai employé pour colorer les cellules ou pour placer des cases à cocher: en modifiant l'affichage individuel des cellules.

Comme pour les zones protégées ou pour les cases à cocher, on pourrait imaginer une fonction indiquant un rectangle de cellules  fusionner. Mais ma question est: qu'est-ce qu'on fait avec les données ? Est-ce que c'est le contenu de la cellule en haut à gauche, en bas à droite ou ailleurs dans le rectangle qui est la cellule "active", c'est à dire celle qui contient les donnéed affichées ? Sachant que dans le cas d'une cellule fucionnée, toutes les cellules d'un même groupe réagissent de façon identique à un clic.

Je pourrais faire un code 17 à GridFunction, dans lequel on spécifie le rectangle à fusionner dans les 4 paramètres libres, et on interprète la cellule du coin en bas à droite comme cellule active (contenant les données). Pourquoi cette cellule ? C'est parce que l'affichage modifié pour tenir compte de la fusion doit se faire dans l'évènement OnDrawCell de cette cellule, car sinon, il serait effacé par le réaffichage des autres cellules du groupe.

Qu'est-ce que tu en penses ?

EDIT

Tout le groupe fusionné prendrait alors les attributs graphiques ce cette cellule (couleur, ...).
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Minibug

Minibug


Nombre de messages : 4566
Age : 57
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptyVen 27 Nov 2015 - 15:28

Merci Klaus pour ta réponse détaillée ! Laughing

Effectivement ça peux être une piste intéressante si l'on garde la règle de la 'cellule en bas a droite' pour l'affichage.

Cela peut être sympa pour créer un tableau avec une ligne de titre ou même tout autre chose d'ailleurs...
En plus de la gestion des couleurs et toutes les options que tu as rajouté depuis, on a maintenant un super outil qui est a lui seul déjà bien plus complet que le simple GRID de Panoramic.

Si je te pose cette question c'est que je réfléchis a la manière d'intégrer le menu objet de GPP de manière plus 'dynamique' et plus simple dans sa gestion.
l'intérêt d'utilisé le GRID avec les options de KGF me permettrai par exemple :
- de mettre des couleurs sur les lignes des objets qui sont cliqués.
- de fondre les cellules du parent et afficher un décalage par les cellules des objets en dessous.
- d'avoir une gestion simplifié des objets avec un simple GRID_SAVE et GRID_LOAD du tableau.

Voila pourquoi je me pose ces questions, mais pour le moment je n'ai pas encore décidé de ce que j'allais faire.
Garder un LIST, utiliser le GRID, trouver autre chose, pour l'instant je réfléchis...Wink
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptyVen 27 Nov 2015 - 16:13

Citation :
En plus de la gestion des couleurs et toutes les options que tu as rajouté depuis, on a maintenant un super outil qui est a lui seul déjà bien plus complet que le simple GRID de Panoramic.

Attention: c'est et ça reste l'objet GRID de Panoramic ! J'aurais pu choisir l'option d'ajout d'un objet intégralement créé et géré par la DLL, mais je ne voulais pas du tout faire double emploi avec une fonctionnalité de Panoramic. J'ai donc simplement fait des "ajouts" fonctionnels utiliant le GRID créé par Panoramic.

Ceci étant dit, je vais commencer cette histoire de fusion, et je te tiendrai au courant de son avancement...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Minibug

Minibug


Nombre de messages : 4566
Age : 57
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptyVen 27 Nov 2015 - 16:30

Citation :
Attention: c'est et ça reste l'objet GRID de Panoramic !
Oui c'est bien comme cela que je l'entends.

Citation :
Ceci étant dit, je vais commencer cette histoire de fusion, et je te tiendrai au courant de son avancement...
Merci Klaus, Je pense que je ne serai pas le seul intéressé ! Wink
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptyVen 27 Nov 2015 - 23:45

Rapport d'étape: la fuion avance. L'affichage initial marche bien. Il y a encore un problème lors du réaffichage suite à un clic ou une modification de cellule, en particulier si cette cellule est représentée comme case à cocher. Mais ça avance.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Minibug

Minibug


Nombre de messages : 4566
Age : 57
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptySam 28 Nov 2015 - 7:29

OK Klaus !

Prends ton temps. Wink

Moi je suis toujours dans la réflexion pour GPP.
Avec tous ces changements que je m'impose, je ne sais plus par ou commencer... drunken
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re   KGF_dll - nouvelles versions - Page 2 EmptyDim 29 Nov 2015 - 19:03

Une suggestion pour quand tu auras finalisé la fusion de cellules...

Il serait intéressant de pouvoir choisir le sens d' écriture (Vertical / Horizontal).

Bon, j' ai compris, je sors... Laughing
Revenir en haut Aller en bas
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptyVen 11 Déc 2015 - 15:46

Petite mise à jour de la doc (KGF.chm et doc en ligne): La fonction ValueListEditor a 3 nouveaux codes opération (7, 8 et 9). Ils existaient déjà, mais n'étaient pas documentés.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptyDim 13 Déc 2015 - 23:45

Suite à un crash assez sérieux, je suis en train de reconstruire mes logiciels. Je ne panique pas, car pour KGF.dll, j'ai absolument tout gardé, sources, docs, environnement etc. Rien n'est perdu. En revanche, j'ai dû refaire mon site Web. J'en ai profité pour alléger et simplifier l'interface, tout en gardant sa structure habituelle. Je voudrais vous le soumettre et recueillir vos avis, avant éventuellement de basculer vers la nouvelle version, ou de modifier éventuellement mon nouveau code. Voici le lien:
http://klauspanoramicbis.netai.net
Je vous serais reconnaissant d'y jeter un oeil. Techniquement, il est complet, avec tous les téléchargements, y compris l'aide en ligne de LGF.dll. La véritable suppression est la partie anglaise du site, et dans un premier temps, tant pis pour les non-francophones. Mon forum personnel a également disparu - par manque d'activité, malgré plusieurs relances de ma part, l'hébergeur (Nabble) l'a supprimé. Dont acte.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Invité
Invité




KGF_dll - nouvelles versions - Page 2 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 2 EmptyLun 14 Déc 2015 - 0:32

Bonsoir Klaus.
Je viens d'essayer. Des gouts et des couleurs, je ne discute pas. Le principal pour moi, c'est le travail.
Je t'avais fait une fois une remarque, celui de supprimer dans contribution, fichier à accès direct. Il est en Justbasic, et je n'ai jamais pu faire fonctionné celui-ci avec W7. Maintenant avec ton aide et kgf, celui-ci ne sert plus à rien. Pas de regret, fait de la place. Merci d'avance. Même si quelqu'un voulait l'utiliser sous XP, je ne pourrais plus intervenir.
Revenir en haut Aller en bas
Contenu sponsorisé





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

Revenir en haut Aller en bas
 
KGF_dll - nouvelles versions
Revenir en haut 
Page 2 sur 40Aller à la page : Précédent  1, 2, 3 ... 21 ... 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: