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 16 Emptypar Pedro Aujourd'hui à 10:37

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

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

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

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

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

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

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

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

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

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

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

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

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

» fichier.exe
KGF_dll - nouvelles versions - Page 16 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 du moment : -28%
-28% Machine à café avec broyeur ...
Voir le deal
229.99 €

 

 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 ... 9 ... 15, 16, 17 ... 28 ... 40  Suivant
AuteurMessage
Yannick




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

KGF_dll - nouvelles versions - Page 16 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 16 EmptyJeu 31 Mar 2016 - 15:01

Une petite question avant un gros bug...

Si je dois créer 12 grids
Puis je me servir du même memo ?

Le retour dans l' Edit est apparemment composé de "SG"+handle(objet)+Action$=column%+","+Row%
donc il est réutilisable.
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 16 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 16 EmptyJeu 31 Mar 2016 - 15:13

Oui... mais...

C'est conçu pour qu'on puisse créer un nombre "illimité" de ces objets. Mais je sais que techniquement, j'ai encore un endroit qui va s'appliquer globalement sur tous les StingGrids créés, ce qui n'est pas l'idée derrière cette cobstruction. Il faut encore que je lève cet obstacle. Mais à partir de là, oui, pas de problème.
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 16 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 16 EmptyJeu 31 Mar 2016 - 15:22

J' ai voulu créer un tab avec 12 feuilles contenant chacune un objet grid
et...rien.
Code:
variables()

dim kgf$
kgf$ = "C:\KGF\KGF.dll"
dll_on kgf$

label clic

main_menu mm%
sub_menu sm1% : parent sm1%,mm% : Caption sm1%,"Ajouter"  : on_click sm1%,clic
sub_menu sm2% : parent sm2%,mm% : Caption sm2%,"Supprimer" : on_click sm2%,clic

memo mem%
full_space mem%
bar_both mem%
height mem%,height(mem%)-30

edit SGedit%
top SGedit%,height(mem%)+2

FormF2()
end
' ------------------------------------------------------------------------------
sub variables()
  dim_local i%
  dim no%
  dim mm% : no%=no%+1 : mm%=no%
  dim sm1%: no%=no%+1 : sm1%=no%
  dim sm2%: no%=no%+1 : sm2%=no%
  dim mem%: no%=no%+1 : mem%=no%
  dim f2% : no%=no%+1 : f2%=no%
  dim Pan%: no%=no%+1 : Pan%=no%
  dim Feuille%(12)
  for i%=1 to 12 : no%=no%+1 : feuille%(i%)=no% : next i%
  dim SG%(12)
  dim SGedit% : no%=no%+1 : SGedit%=no%
end_sub


sub FormF2()
  dim_local h%,w%,i%,res%
  if object_exists(F2%)=1
      show F2%
  else
      form F2%
      height F2%,500
      width F2%,800
      left F2%,width(0)
     
      clear mem%
      item_add mem%,"Width="+str$(w%)
      item_add mem%,"Height="+str$(h%-30)
      item_add mem%,"Rows=2"
      item_add mem%,"Columns=10"
      item_add mem%,"FixedRows=1"
      item_add mem%,"FixedColumns=0"
     
      container_tab Pan%
      parent Pan%,F2%
      full_space Pan%
      h%=height(Pan%)
      w%=width(Pan%)

      for i%=1 to 12
        tab feuille%(i%)
        parent feuille%(i%),pan%
        height feuille%(i%),h%-30
        width feuille%(i%),w%
        SG%(i%) = dll_call3("CreateStringGrid",handle(feuille%(i%)),handle(mem%),handle(SGedit%))
      next i%
  end_if
end_sub

clic:
  if number_click = sm1%
      AddRowToGrid(SG%)
      return
  end_if
  if number_click = sm2%
      DelRowFromGrid(SG%)
      return
  end_if
return

sub AddRowToGrid(obj%)
  dim_local res%
  res% = DLL_call6("GridFunction",obj%,19,0,0,0,0)
end_sub

sub DelRowFromGrid(obj%)
  dim_local res%
  res% = DLL_call6("GridFunction",obj%,21,3,0,0,0)
end_sub
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 16 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 16 EmptyJeu 31 Mar 2016 - 15:44

Apparemment, les objets sont créés mais ne s' affichent pas.

Code:
dim no%,i%,h%,w%,a$
dim mm% : no%=no%+1 : mm%=no%
dim sm1%: no%=no%+1 : sm1%=no%
dim sm2%: no%=no%+1 : sm2%=no%
dim mem%: no%=no%+1 : mem%=no%
dim f2% : no%=no%+1 : f2%=no%
dim Pan%: no%=no%+1 : Pan%=no%
dim Feuille%(12)
for i%=1 to 12 : no%=no%+1 : feuille%(i%)=no% : next i%
dim SG%(12)
dim SGedit% : no%=no%+1 : SGedit%=no%
dim kgf$
kgf$ = "C:\KGF\KGF.dll"
dll_on kgf$

label clic

height 0,500
width 0,800

main_menu mm%
sub_menu sm1% : parent sm1%,mm% : Caption sm1%,"Ajouter"  : on_click sm1%,clic
sub_menu sm2% : parent sm2%,mm% : Caption sm2%,"Supprimer" : on_click sm2%,clic

memo mem%
full_space mem%
bar_both mem%
height mem%,height(mem%)-30
hide mem%

clear mem%
item_add mem%,"Width="+str$(w%)
item_add mem%,"Height="+str$(h%-30)
item_add mem%,"Rows=2"
item_add mem%,"Columns=10"
item_add mem%,"FixedRows=1"
item_add mem%,"FixedColumns=0"

edit SGedit%
top SGedit%,height(mem%)+2

container_tab Pan%
full_space Pan%
h%=height(Pan%)
w%=width(Pan%)

for i%=1 to 12
  tab feuille%(i%)
  parent feuille%(i%),pan%
  height feuille%(i%),h%-30
  width feuille%(i%),w%
  caption feuille%(i%),"Feuil N°: "+str$(i%)
  SG%(i%) = dll_call3("CreateStringGrid",handle(feuille%(i%)),handle(mem%),handle(SGedit%))
  a$ = a$+"String Grid : "+str$(SG%(i%))+chr$(13)
next i%

message a$

end
' ------------------------------------------------------------------------------


clic:
  if number_click = sm1%
      AddRowToGrid(SG%)
      return
  end_if
  if number_click = sm2%
      DelRowFromGrid(SG%)
      return
  end_if
return

sub AddRowToGrid(obj%)
  dim_local res%
  res% = DLL_call6("GridFunction",obj%,19,0,0,0,0)
end_sub

sub DelRowFromGrid(obj%)
  dim_local res%
  res% = DLL_call6("GridFunction",obj%,21,3,0,0,0)
end_sub
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 16 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 16 EmptyJeu 31 Mar 2016 - 15:48

Essaie déjà avec une seule feulle. Et meux, un seul grid directement sur une form, sans feuille. Et regarde si tu vois la grille apparaître.

Dans mon post ci-dessus, j'avais bien dit que pour le moment, il y a un problème avec des grilles multiples et que je suis en train de le résoudre. Non ?
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 16 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 16 EmptyJeu 31 Mar 2016 - 15:55

Embarassed Aïe, c' est un post qui a du m' échapper.

Dans le cas d' une grille sur un Form simple, il n' y a pas de souci.
D' où le fait de vouloir compliquer la tâche...
Laughing

Non, en fait, je faisais des essais pour voir si je pouvais l' intégrer et comment l' intégrer 
dans GestCompte.
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 16 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 16 EmptyJeu 31 Mar 2016 - 16:03

C'est un peu trop tôt.

Mais tu peux déjà essayer d'inclure un seul exemplaire dans une fiche. Voir si ça marche, au lieu d'être simplement dans une form... ça devrait, tout au moins.
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 16 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 16 EmptyJeu 31 Mar 2016 - 16:16

Apparement c' est avec Tab que cela coince :

1 seul grid dans le tab 1, pas d' affichage
Code:
dim no%,i%,h%,w%,a$
dim mm% : no%=no%+1 : mm%=no%
dim sm1%: no%=no%+1 : sm1%=no%
dim sm2%: no%=no%+1 : sm2%=no%
dim mem%: no%=no%+1 : mem%=no%
dim f2% : no%=no%+1 : f2%=no%
dim Pan%: no%=no%+1 : Pan%=no%
dim Feuille%(12)
for i%=1 to 12 : no%=no%+1 : feuille%(i%)=no% : next i%
dim SG%
dim SGedit% : no%=no%+1 : SGedit%=no%
dim kgf$
kgf$ = "C:\KGF\KGF.dll"
dll_on kgf$

label clic

height 0,500
width 0,800

main_menu mm%
sub_menu sm1% : parent sm1%,mm% : Caption sm1%,"Ajouter"   : on_click sm1%,clic
sub_menu sm2% : parent sm2%,mm% : Caption sm2%,"Supprimer" : on_click sm2%,clic

memo mem%
full_space mem%
bar_both mem%
height mem%,height(mem%)-30
hide mem%

clear mem%
item_add mem%,"Width="+str$(w%)
item_add mem%,"Height="+str$(h%-30)
item_add mem%,"Rows=2"
item_add mem%,"Columns=10"
item_add mem%,"FixedRows=1"
item_add mem%,"FixedColumns=0"

edit SGedit%
top SGedit%,height(mem%)+2

container_tab Pan%
full_space Pan%
h%=height(Pan%)
w%=width(Pan%)

for i%=1 to 12
   tab feuille%(i%)
   parent feuille%(i%),pan%
   height feuille%(i%),h%-30
   width feuille%(i%),w%
   caption feuille%(i%),"Feuil N°: "+str$(i%)
next i%

SG% = dll_call3("CreateStringGrid",handle(feuille%(1)),handle(mem%),handle(SGedit%))
a$ = a$+"String Grid : "+str$(SG%)+chr$(13)


message "Handle Tab 1 : "+str$(handle(feuille%(1)))+chr$(13)+a$

end
' ------------------------------------------------------------------------------


clic:
   if number_click = sm1%
      AddRowToGrid(SG%)
      return
   end_if
   if number_click = sm2%
      DelRowFromGrid(SG%)
      return
   end_if
return

sub AddRowToGrid(obj%)
   dim_local res%
   res% = DLL_call6("GridFunction",obj%,19,0,0,0,0)
end_sub

sub DelRowFromGrid(obj%)
   dim_local res%
   res% = DLL_call6("GridFunction",obj%,21,3,0,0,0)
end_sub
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 16 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 16 EmptyJeu 31 Mar 2016 - 17:52

MDR... C'est normal ! Tu lui demandes de créer un StringGrid avec une largeur de 0 pixels et une hauteur de 0 pixels ! Et c'est ce qu'il fait...

En fait, ce sont tes variables w% et h% qui sont charges après avoir été utilisées pour créer le mémo de commande. Essaie plutôt comme ceci:
Code:
dim no%,i%,h%,w%,a$
dim mm% : no%=no%+1 : mm%=no%
dim sm1%: no%=no%+1 : sm1%=no%
dim sm2%: no%=no%+1 : sm2%=no%
dim mem%: no%=no%+1 : mem%=no%
dim f2% : no%=no%+1 : f2%=no%
dim Pan%: no%=no%+1 : Pan%=no%
dim Feuille%(12)
for i%=1 to 12 : no%=no%+1 : feuille%(i%)=no% : next i%
dim SG%
dim SGedit% : no%=no%+1 : SGedit%=no%
dim kgf$
kgf$ = "KGF.dll"
dll_on kgf$

label clic

height 0,500
width 0,800

main_menu mm%
sub_menu sm1% : parent sm1%,mm% : Caption sm1%,"Ajouter"  : on_click sm1%,clic
sub_menu sm2% : parent sm2%,mm% : Caption sm2%,"Supprimer" : on_click sm2%,clic

memo mem%
full_space mem%
bar_both mem%
height mem%,height(mem%)-30
hide mem%

edit SGedit%
top SGedit%,height(mem%)+2

container_tab Pan%
full_space Pan%
h%=height(Pan%)
w%=width(Pan%)

clear mem%
item_add mem%,"Width="+str$(w%)
item_add mem%,"Height="+str$(h%-30)
item_add mem%,"Rows=2"
item_add mem%,"Columns=10"
item_add mem%,"FixedRows=1"
item_add mem%,"FixedColumns=0"

for i%=1 to 12
  tab feuille%(i%)
  parent feuille%(i%),pan%
  height feuille%(i%),h%-30
  width feuille%(i%),w%
  caption feuille%(i%),"Feuil N°: "+str$(i%)
next i%

SG% = dll_call3("CreateStringGrid",handle(feuille%(1)),handle(mem%),handle(SGedit%))
a$ = a$+"String Grid : "+str$(SG%)+chr$(13)


message "Handle Tab 1 : "+str$(handle(feuille%(1)))+chr$(13)+a$

end
' ------------------------------------------------------------------------------


clic:
  if number_click = sm1%
      AddRowToGrid(SG%)
      return
  end_if
  if number_click = sm2%
      DelRowFromGrid(SG%)
      return
  end_if
return

sub AddRowToGrid(obj%)
  dim_local res%
  res% = DLL_call6("GridFunction",obj%,19,0,0,0,0)
end_sub

sub DelRowFromGrid(obj%)
  dim_local res%
  res% = DLL_call6("GridFunction",obj%,21,3,0,0,0)
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 16 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 16 EmptyJeu 31 Mar 2016 - 17:55

KGF.dll V6.23 du 31/03/2016

Nouveautés:
- StringGrid: rendre possible l'utilisation simultanée de plusieurs StringGrid

Modules modifiés:
KGF.dll
KGF.chm


La doc est inchangée. Les sources sont à jour.
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 16 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 16 EmptyJeu 31 Mar 2016 - 18:03

Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed
Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed
Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed Embarassed

Je crois que c' est le coup de tel pour un entretien d' embauche demain qui a du me perturber.

Donc, la création multiple est faisable. cheers

Dans la doc, j' ai vu la création d' un checkbox.
As tu prévu, de pouvoir le cocher par programme (remplissage automatique du grid)
et de pouvoir récupérer son état ( coché/non coché) ?
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 16 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 16 EmptyJeu 31 Mar 2016 - 18:24

Citation :
Dans la doc, j' ai vu la création d' un checkbox.
As tu prévu, de pouvoir le cocher par programme (remplissage automatique du grid)
et de pouvoir récupérer son état ( coché/non coché) ?

Cela se fait par le contenu de la cellule concerné. Si elle est représentée comme une CheckBox, le premier caractère est obligatoirement un "0" ou un "1" (qu'est-ce que ça pourrait bien vouloir signifier ?). Et en fait, de façon interne, on ajoute un "²" devant, pour bien signifier qu'il s'agit du texte pour un CheckBox.

Donc, si tu envoies "²1Une option" dans une telle cellule, tu obtiens l'image d'une CheckBox cochée, à côté du texte "Une option". Tu en déduis ce qu'il faut faire pour décocher la CheckBox...
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 16 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 16 EmptyJeu 31 Mar 2016 - 19:48

Ok Klaus.

Petite apport pour la doc.
Il est écris
..
sub RGB(R%,G%,B%) : ' produire une valeur RGB valide
 RGB% = (B%*256+R%)*256+G%
end_sub

à corriger par :
..
sub RGB(R%,G%,B%) : ' produire une valeur RGB valide
 if variable("RGB%")=0 then dim RGB%
 RGB% = (B%*256+G%)*256+R%
end_sub
Revenir en haut Aller en bas
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 70
Localisation : 83 Var
Date d'inscription : 07/05/2009

KGF_dll - nouvelles versions - Page 16 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 16 EmptyJeu 31 Mar 2016 - 19:56

Ygeronimi a écrit:
Je crois que c' est le coup de tel pour un entretien d' embauche demain qui a du me perturber.

Je te dis M.... !

Very Happy
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 16 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 16 EmptyJeu 31 Mar 2016 - 21:16

J'ai fait la petite modif de la doc, Ygeronimi.
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 16 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 16 EmptyJeu 31 Mar 2016 - 23:22

@ Jean Claude,

Merci.

@ Klaus,

Par hasard, tu n' aurais pas une fonction "GridRead",SG%,C%,L% dans ton escarcelle ?...

J' ai essayé de me servir de GetSelectedGridIndexes suivit de GetSelectedGridText mais sans succès.
KGF_dll - nouvelles versions - Page 16 Captur11
Code:
sub POINTAGE_ENRGT(grd%,lng%)
   dim_local etat$,res%,m$,txt$,L%,x1%,x2%
   L%  = lng%
   x1% = 1
   x2% = 9
   message str$(l%)+chr$(13)+str$(grd%)
   res% = DLL_call5("GetSelectedGridIndexes",grd%,adr(x1%),adr(L%),adr(x2%),adr(L%))
   message str$(res%)
   txt$ =string$(2000," ")
   res% = DLL_call2("GetSelectedGridText",grd%,adr(txt$))
   txt$ = trim$(txt$)
   message txt$
end_sub

Lng%=7


KGF_dll - nouvelles versions - Page 16 Captur12
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 16 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 16 EmptyVen 1 Avr 2016 - 0:30

Je vois... Ca manque parce que je suis parti de fonctions "extension" au GRID de Panoramic, et là, il y avait une fonction native de lecture. Ce n'est évidemment plus vrai maintenant. Donc, je vais faire ça tout de suite.
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 16 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 16 EmptyVen 1 Avr 2016 - 1:06

KGF.dll V6.24 du 01/04/2016

Nouveautés:
- nouvelle fonction GetGridCellText

Modules modifiés:
KGF.dll
KGF.chm


La doc et les sources sources sont à jour.

Voici le programme de démo qui utilise cette nouvelle fonction pour afficher, entre autres, le contenu de la cellule sélectionné lors d'un clic dans une cellule:
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%, SG%
dim stat$(3)
  stat$(0) = "Normal"
  stat$(1) = "Libre"
  stat$(2) = "Sélectionnable"
  stat$(3) = "Bloqué"

dll_on "KGF.dll"

width 0,690 : height 0,310

edit 98 : ' hide 98
  top 98,300 : on_change 98,clic
height 0,380

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))


for l%=1 to 10
  for c%=1 to 10
    s$ = str$(c%)+","+str$(l%)
    res% = dll_call4("WriteGridCell",SG%,c%,l%,adr(s$))
  next c%
next l%


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

' première zone interdite totalement
res% = dll_call6("GridFunction",SG%,12,3,2,5,3)

' seconde zone interdite en saisie uniquement
res% = dll_call6("GridFunction",SG%,13,7,4,8,5)

' troisième zone CheckBox à gauche
res% = dll_call6("GridFunction",SG%,15,4,6,4,9)

' quatrième zone CheckBox à droite
res% = dll_call6("GridFunction",SG%,16,6,7,9,8)

' Cinquième zone CheckBox à gauche dans zone interdite
res% = dll_call6("GridFunction",SG%,15,4,2,4,3)

' Sixième zone CheckBox à droite dans zone protégée
res% = dll_call6("GridFunction",SG%,15,7,4,7,5)

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

RGB(255,200,200)
for l%=2 to 3
  for c%=3 to 3 : ' 5
    ' couleur de la première zone interdite
    res% = dll_call6("GridFunction",SG%,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",SG%,2,c%,l%,RGB%,0)
  next c%
next l%

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

' autoriser la saisie
res% = dll_call6("GridFunction",SG%,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:
'  caption 0,text$(98)    : ' ici, ona  déjà le numéro de ligne et de colonne dans Edit 98 !
  res% = dll_call6("GridFunction",SG%,14,adr(x%),adr(y%),adr(status%),0)
  s$ = string$(255," ")
  res% = dll_call4("GetGridCellText",SG%,x%,y%,adr(s$))
  caption 0, "click colonne "+str$(x%) +" ligne "+str$(y%)+"  "+stat$(status%+1)+" = "+trim$(s$)
  return



Dernière édition par Klaus le Ven 1 Avr 2016 - 13:29, édité 1 fois
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 16 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 16 EmptyVen 1 Avr 2016 - 13:29

KGF.dll V6.25 du 01/04/2016

Nouveautés:
- nouvelles fonctions GetGridRowText et GetGridColumnText

Modules modifiés:
KGF.dll
KGF.chm


La doc et les sources sources sont à jour.

Le programme de démo affiche maintenant dans un message, le texte le la ligne et le texte de la colonne, lors d'un clic dans une cellule:
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%, SG%
dim stat$(3)
  stat$(0) = "Normal"
  stat$(1) = "Libre"
  stat$(2) = "Sélectionnable"
  stat$(3) = "Bloqué"

dll_on "KGF.dll"

width 0,690 : height 0,310

edit 98 : ' hide 98
  top 98,300 : on_change 98,clic
height 0,380

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))


for l%=1 to 10
  for c%=1 to 10
    s$ = str$(c%)+","+str$(l%)
    res% = dll_call4("WriteGridCell",SG%,c%,l%,adr(s$))
  next c%
next l%


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

' première zone interdite totalement
res% = dll_call6("GridFunction",SG%,12,3,2,5,3)

' seconde zone interdite en saisie uniquement
res% = dll_call6("GridFunction",SG%,13,7,4,8,5)

' troisième zone CheckBox à gauche
res% = dll_call6("GridFunction",SG%,15,4,6,4,9)

' quatrième zone CheckBox à droite
res% = dll_call6("GridFunction",SG%,16,6,7,9,8)

' Cinquième zone CheckBox à gauche dans zone interdite
res% = dll_call6("GridFunction",SG%,15,4,2,4,3)

' Sixième zone CheckBox à droite dans zone protégée
res% = dll_call6("GridFunction",SG%,15,7,4,7,5)

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

RGB(255,200,200)
for l%=2 to 3
  for c%=3 to 3 : ' 5
    ' couleur de la première zone interdite
    res% = dll_call6("GridFunction",SG%,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",SG%,2,c%,l%,RGB%,0)
  next c%
next l%

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

' autoriser la saisie
res% = dll_call6("GridFunction",SG%,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:
'  caption 0,text$(98)    : ' ici, ona  déjà le numéro de ligne et de colonne dans Edit 98 !
  res% = dll_call6("GridFunction",SG%,14,adr(x%),adr(y%),adr(status%),0)
  s$ = string$(255," ")
  res% = dll_call4("GetGridCellText",SG%,x%,y%,adr(s$))
  caption 0, "click colonne "+str$(x%) +" ligne "+str$(y%)+"  "+stat$(status%+1)+" = "+trim$(s$)
  s$ = string$(255," ")
  res% = dll_call3("GetGridRowText",SG%,y%,adr(s$))
  message "Ligne="+trim$(s$)
  s$ = string$(255," ")
  res% = dll_call3("GetGridColumnText",SG%,x%,adr(s$))
  message "Colonne="+trim$(s$)
  return

 
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 16 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 16 EmptyVen 1 Avr 2016 - 19:30

cheers
Comme tu es si bien partis, je vais user et abuser.
Une chose qui serait bien, c' est de pouvoir définir l' alignement sur une colonne.
Actuellement, si je ne me trompe pas, cela est possible mais sur l' ensemble du Grid.
Cela permettrait d' aligner les cellules contenant des nombres à droite et celles
contenant du texte à gauche.
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 16 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 16 EmptyVen 1 Avr 2016 - 20:08

J' ai un petit souci avec WriteGridCell, si un texte est déjà présent dans la cellule,
il n' écrit pas par dessus celui ci.

Il faudrait donc, soit qu' il efface la cellule et écrive le nouveau texte.
soit une fonction pour effacer une cellule remplie.
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 16 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 16 EmptyVen 1 Avr 2016 - 21:50

Plusieurs choses à dire. Prenons dans l'ordre:
Code:
Une chose qui serait bien, c' est de pouvoir définir l' alignement sur une colonne.
Actuellement, si je ne me trompe pas, cela est possible mais sur l' ensemble du Grid.
Essaie de définir "cadrage à droite" par GridFunction code 9, puis définir une couleur (même si c'est blanc...) par GridFunction code 4 ou 7 (pour une colonne). Puis tu remets "cadrage à gauche" pour le cas général. En principe, toutes les cellules de cette colonne devraient avoir "hérité" de l'attribut "cadrage à droite". La même technique s'applique pour des lignes entières, ou pour une cellule individuelle (code 2).

Citation :
J' ai un petit souci avec WriteGridCell, si un texte est déjà présent dans la cellule,
il n' écrit pas par dessus celui ci.
Là, je ne suis pas d'accord. Regarde mon programme de démo ci-après. Après avoir chargé toutes les cellules avec leurs valeurs initiales, je réécris spécifiquement la cellule ligne 3 colonne 9, en y mettant "ABCD". Et ça marche:
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%, SG%
dim stat$(3)
  stat$(0) = "Normal"
  stat$(1) = "Libre"
  stat$(2) = "Sélectionnable"
  stat$(3) = "Bloqué"

dll_on "KGF.dll"

width 0,690 : height 0,310

edit 98 : ' hide 98
  top 98,300 : on_change 98,clic
height 0,380

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))


for l%=1 to 10
  for c%=1 to 10
    s$ = str$(c%)+","+str$(l%)
    res% = dll_call4("WriteGridCell",SG%,c%,l%,adr(s$))
  next c%
next l%
s$ = "ABCD"
res% = dll_call4("WriteGridCell",SG%,9,4,adr(s$))


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

' première zone interdite totalement
res% = dll_call6("GridFunction",SG%,12,3,2,5,3)

' seconde zone interdite en saisie uniquement
res% = dll_call6("GridFunction",SG%,13,7,4,8,5)

' troisième zone CheckBox à gauche
res% = dll_call6("GridFunction",SG%,15,4,6,4,9)

' quatrième zone CheckBox à droite
res% = dll_call6("GridFunction",SG%,16,6,7,9,8)

' Cinquième zone CheckBox à gauche dans zone interdite
res% = dll_call6("GridFunction",SG%,15,4,2,4,3)

' Sixième zone CheckBox à droite dans zone protégée
res% = dll_call6("GridFunction",SG%,15,7,4,7,5)

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

RGB(255,200,200)
for l%=2 to 3
  for c%=3 to 3 : ' 5
    ' couleur de la première zone interdite
    res% = dll_call6("GridFunction",SG%,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",SG%,2,c%,l%,RGB%,0)
  next c%
next l%

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

' autoriser la saisie
res% = dll_call6("GridFunction",SG%,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:
'  caption 0,text$(98)    : ' ici, ona  déjà le numéro de ligne et de colonne dans Edit 98 !
  res% = dll_call6("GridFunction",SG%,14,adr(x%),adr(y%),adr(status%),0)
  s$ = string$(255," ")
  res% = dll_call4("GetGridCellText",SG%,x%,y%,adr(s$))
  caption 0, "click colonne "+str$(x%) +" ligne "+str$(y%)+"  "+stat$(status%+1)+" = "+trim$(s$)
  s$ = string$(255," ")
  res% = dll_call3("GetGridRowText",SG%,y%,adr(s$))
  message "Ligne="+trim$(s$)
  s$ = string$(255," ")
  res% = dll_call3("GetGridColumnText",SG%,x%,adr(s$))
  message "Colonne="+trim$(s$)
  return

  

Qu'est-ce que tu penses des 3 fonctions de lecture ?

EDIT

Il faut que je précise un point: Si une cellule est concerné par plusieurs paramétrages de couleur, attributs etc, chacun sera appliqué dans l'ordre de la création des paramètres. Et c'est donc le dernier qui restera visible. Exemple: ligne 3 en couleur rouge, colonne 7 en couleur bleue. La cellule en ligne 3 colonne 7 sera bleue.
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 16 Empty
MessageSujet: Re   KGF_dll - nouvelles versions - Page 16 EmptyVen 1 Avr 2016 - 22:09

Je confirme pour WriteGridCell, sauf que pour effacer une cellule, txt$ = chr$(32) ou " ", 
si txt$ = "", je n' ai pas le résultat voulu.

Je vais faire des essais pour l' alignement, mais demain, j' ai mon Mincrafter qui est de Week-end et qui me tanne pour prendre ma place.
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 16 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 16 EmptyVen 1 Avr 2016 - 22:19

Citation :
Je confirme pour WriteGridCell, sauf que pour effacer une cellule, txt$ = chr$(32) ou " ",
si txt$ = "", je n' ai pas le résultat voulu.
Alors, pourquoi ce code de mon programme de démo marche:
Code:
for l%=1 to 10
  for c%=1 to 10
    s$ = str$(c%)+","+str$(l%)
    res% = dll_call4("WriteGridCell",SG%,c%,l%,adr(s$))
  next c%
next l%
s$ = "ABCD"
res% = dll_call4("WriteGridCell",SG%,9,4,adr(s$))
Tu vois le remplissage de tout le tableau par les deux boucles imbriquées, suivi de la réécriture explicite de la cellule (9,4).
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 16 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 16 EmptySam 2 Avr 2016 - 8:38

Ta chaîne de caractères n' est pas vide, elle contient "ABCD".
Dans mon cas, je gère le pointage d' une opération bancaire par "X" pour une opération pointée.
Si je veux dépointer cette opération, je supprime ce "X".
Au niveau du Grid, pour supprimer ce "X", il me faut le remplacer par " " ( chr$(32) ou espace ) 
si je mets "" (Chaîne vide ) le caractère "X" reste affiché.
Revenir en haut Aller en bas
Contenu sponsorisé





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

Revenir en haut Aller en bas
 
KGF_dll - nouvelles versions
Revenir en haut 
Page 16 sur 40Aller à la page : Précédent  1 ... 9 ... 15, 16, 17 ... 28 ... 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: