Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | | Calendrier |
|
|
| Début des objets en style "plat" | |
| | |
Auteur | Message |
---|
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Début des objets en style "plat" Mer 2 Mai 2018 - 0:22 | |
| J'ai créé une nouvelle version de KGF.dll, disponible sur mon WebDav et sur les deux sites internet. On y trouve une nouvelle fonction: - Code:
-
res% = dll_call1("ClientAreaAsRegion",handle(obj%)) On spécifie le handle d'un objet Panoramic, et la bordure 3D est coupée. Ceci ne marche pas (encore) avec l'objet BUTTON (mais un peut aisément le remplacer par un PICTURE dans l'optique "style plat"), mais la démo suivante le montre sur un EDIT et un MEMO: - Code:
-
' test_ClientAreaAsRegion.bas
dim res%
edit 1 : top 1,10 : left 1,10 : text 1,"Edit 1" edit 2 : top 2,10 : left 2,left(1)+width(1) : text 2,"Edit 2"
memo 11 : top 11,40 : left 11,10 : item_add 11,"Memo 11" memo 12 : top 12,40 : left 12,left(11)+width(11) : item_add 12,"Memo 12"
button 21 : top 21,140 : left 21,10 : caption 21,"Button 21" button 22 : top 22,140 : left 22,left(21)+width(21) : caption 22,"Button 22"
dll_on "KGF.dll"
res% = dll_call1("ClientAreaAsRegion",handle(1)) : ' ok res% = dll_call1("ClientAreaAsRegion",handle(11)) : ' ok res% = dll_call1("ClientAreaAsRegion",handle(21)) : ' ne marche pas pour un bouton
end
| |
| | | Fredisland
Nombre de messages : 261 Date d'inscription : 30/03/2018
| Sujet: Re: Début des objets en style "plat" Mer 2 Mai 2018 - 0:47 | |
| Alors ça c'est du canon ! Mais j'ai une erreur permanente :
--------------------------- Panoramic_editor --------------------------- (29) Not correct arithmetic expression : Error in function. Line : 16 --------------------------- OK ---------------------------
| |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Début des objets en style "plat" Mer 2 Mai 2018 - 0:51 | |
| Ben... fait télécharger KGF.dll, de mon WebDav dossier DLLs, par exemple ! Tu dois avoir une version certes récente de KGF.dll, mais sans la fonction que je viens d'ajouter... | |
| | | Fredisland
Nombre de messages : 261 Date d'inscription : 30/03/2018
| Sujet: Re: Début des objets en style "plat" Mer 2 Mai 2018 - 0:52 | |
| - Klaus a écrit:
- Ben... fait télécharger KGF.dll, de mon WebDav dossier DLLs, par exemple ! Tu dois avoir une version certes récente de KGF.dll, mais sans la fonction que je viens d'ajouter...
J'ai récupé la DLL depuis le Synedit Editor que tu as placé en lien. Je file donc de suite sur ton webdav... | |
| | | Fredisland
Nombre de messages : 261 Date d'inscription : 30/03/2018
| Sujet: Re: Début des objets en style "plat" Mer 2 Mai 2018 - 1:07 | |
| C'est bon, ça fonctionne --- J'ai envie de pleurer --- Tu continues sur ton chemin avec : SYNEDIT, PANEL, CONTAINER, CONTAINER_TAB, HVIEWER, BUTTON_PICTURE ? C'est pas pressé, ça peut attendre demain matin au réveil ! | |
| | | Fredisland
Nombre de messages : 261 Date d'inscription : 30/03/2018
| Sujet: Re: Début des objets en style "plat" Mer 2 Mai 2018 - 1:14 | |
| Il semblerait que je ne puisse utiliser 2 DLL à la fois dans PANORAMIC : soit le user32, soit la tienne . Et j'ai besoin des deux créboudiou !! Est-ce que : - Code:
-
ret% = dll_call4("keybd_event",bVk%,bScan%,dwFlags%,dwExtraInfo%) ... trouverait son équivalent dans la KGF ? Car dans le manuel de KGF, je vois d'autres messages mais pas de keybd_event. ------------------------ Réédit : c'est bon j'ai trouvé : - Code:
-
res% = dll_call5("SendSingleKey",hnd%,VK%,ctrl%,alt%,shift%)
Dernière édition par Fredisland le Mer 2 Mai 2018 - 1:28, édité 2 fois | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Début des objets en style "plat" Mer 2 Mai 2018 - 1:16 | |
| @Fredisland Je te confie un secret : ici sur le Forum, on a coutume d’appeler Klaus 'l’homme qui programme plus vite que son ombre !'Maintenant tu sais autant que nous, mais ne le dis à personne, c’est un secret ! | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Début des objets en style "plat" Mer 2 Mai 2018 - 1:28 | |
| Panoramic ne permet qu’une SEULE dll à la fois. Pour utiliser plus d’une DLL, tu as le choix entre : 1/ utilise la 1ère DLL, puis quitte cette DLL par - Code:
-
DLL_OFF Ensuite - Code:
-
DLL_ON seconde_dll
Etc.. 2) Utilise une fonction de la Klaus dll (KGF.DLL) qui permet justement d’utiliser plus d’une dll. Je ne me rappelle plus quelle fonction utiliser, mais notre ami Klaus ne tardera pas à éclairer ta lanterne. | |
| | | Fredisland
Nombre de messages : 261 Date d'inscription : 30/03/2018
| Sujet: Re: Début des objets en style "plat" Mer 2 Mai 2018 - 1:31 | |
| - papydall a écrit:
- Panoramic ne permet qu’une SEULE dll à la fois.
Pour utiliser plus d’une DLL, tu as le choix entre : 1/ utilise la 1ère DLL, puis quitte cette DLL par - Code:
-
DLL_OFF Ensuite - Code:
-
DLL_ON seconde_dll
Etc..
Ce basculement de DLL fonctionne à merveille ! Bon sang, je vais me coucher heureux !!! | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Début des objets en style "plat" Mer 2 Mai 2018 - 1:32 | |
| - Citation :
- Est-ce que :
- Code:
-
ret% = dll_call4("keybd_event",bVk%,bScan%,dwFlags%,dwExtraInfo%) ... trouverait son équivalent dans la KGF ? Oui. Regarde, dans KGF.chm ou dans l'aide en ligne( accessible ici), la section "Envoi de touches, caractères et textes à un objet" dans le "Sommaire". Tu y trouveras de multiples fonctions - il n'y a qu'à faire son choix. Je n'ai intentionnellement pas codé keybd_event, car selon la doc, ce service ne s'applique qu'au thread actif, alors que mes fonctions utilisent un handle pour déterminer la cible, et ça peut donc être un programme externe (NotePad, Firefox, ...). | |
| | | Fredisland
Nombre de messages : 261 Date d'inscription : 30/03/2018
| Sujet: Re: Début des objets en style "plat" Mer 2 Mai 2018 - 1:35 | |
| - Klaus a écrit:
- Je n'ai intentionnellement pas codé keybd_event, car selon la doc, ce service ne s'applique qu'au thread actif, alors que mes fonctions utilisent un handle pour déterminer la cible, et ça peut donc être un programme externe (NotePad, Firefox, ...).
Je plussoie totalement. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Début des objets en style "plat" Mer 2 Mai 2018 - 1:40 | |
| - Citation :
- Ce basculement de DLL fonctionne à merveille !
Attention, cependant ! Certaines fonctions de KGF.dll mémorisent des informations en mémoire interne. Et si tu libères KGF.dll pour charger une autre fonction, ces informations sont perdues et il peut y avoir des crashs. Ceci est vrai pour tout ce qui touche à la gestion des bases de données (c'est logique, non ?), au pilotage de Excel et autres logiciels genre Office, aux objets spécifiques tels que KGFGrid, RichEdit, FlowChart, IconComboBox, IconListBox et j'en passe. Bref, tout ce que tu crées avec KGF.dll, jusqu'à ce que tu le supprimes. Ca semble logique, non . Mais KGF.dll offre on moyen, certes lourd, pour contourner cette limite. KGF.dll peut gérer l'utilisation de DLLs dynamiquement chargées pour des opérations ponctuelles. Regarde, dans la doc, la section "Gestion des DLLs dynamiques" dans le sommaire. Tu vois, j'ai prévu beaucoup de choses... En fait, à ce jour, KGF.dll contient 1439 fonctions exportées... | |
| | | Fredisland
Nombre de messages : 261 Date d'inscription : 30/03/2018
| Sujet: Re: Début des objets en style "plat" Mer 2 Mai 2018 - 8:03 | |
| - Klaus a écrit:
- Tu vois, j'ai prévu beaucoup de choses... En fait, à ce jour, KGF.dll contient 1439 fonctions exportées...
Je vais passer du temps à éplucher tout ça.... Sinon je n'utilise pas beaucoup les DLL : uniquement pour simuler des appui sur touches du clavier, et maintenant pour le "flat" que tu as intégré à ta KGF. L'avantage est que le flat est conservé même après libération de la DLL. Et la user32 je ne l'active que temporairement, quand j'en ai besoin. Donc pas de bases de données à gérer. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Début des objets en style "plat" Mer 2 Mai 2018 - 9:10 | |
| Nouvelle version de KGF.dll, sur mon WebDav dossier DLLs et sur les deux sites internet, accessible via le lien "Site normal" dans la signature, puis lien "Panoramic" puis "KGF.dll". Nouvelle fonction: - Code:
-
res% = dll_call1("WindowAreaAsRegion",handle(obj%)) Programme de démo: - Code:
-
' test_ClientAreaAsRegion.bas
label ClientArea, WindowArea dim res%
width 0,1200 : height 0,750
edit 1 : top 1,10 : left 1,10 : text 1,"Edit 1" edit 2 : top 2,10 : left 2,left(1)+width(1) : text 2,"Edit 2"
memo 11 : top 11,40 : left 11,10 : item_add 11,"Memo 11" memo 12 : top 12,40 : left 12,left(11)+width(11) : item_add 12,"Memo 12"
button 21 : top 21,140 : left 21,10 : caption 21,"Button 21" button 22 : top 22,140 : left 22,left(21)+width(21) : caption 22,"Button 22"
combo 31 : top 31,170 : left 31,10 : item_add 31,"Combo 31" : text 31,"Combo 31" combo 32 : top 32,170 : left 32,left(31)+width(31) : item_add 32,"Combo 32" : text 32,"Combo 32"
list 41 : top 41,200 : left 41,10 : item_add 41,"List 41" list 42 : top 42,200 : left 42,left(41)+width(41) : item_add 42,"List 42"
spin 51 : top 51,310 : left 51,10 : position 51,51 spin 52 : top 52,310 : left 52,left(51)+width(51) : position 52,52
grid 61 : top 61,340 : left 61,10 : grid_write 61,1,1,"grid 61" grid 62 : top 62,340 : left 62,left(61)+width(61) : grid_write 62,1,1,"grid 62"
check 71 : top 71,470 : left 71,10 : caption 71,"check 71" check 72 : top 72,470 : left 72,left(71)+width(71) : caption 72,"check 72"
' hviewer est déjà en "plat" ' picture est déjà en "plat" progress_bar 81 : top 81,500 : left 81,10 : position 81,81 progress_bar 82 : top 82,500 : left 82,left(81)+width(81) : position 82,82
scroll_bar 91 : top 91,530 : left 91,10 : position 91,91 scroll_bar 92 : top 92,530 : left 92,left(91)+width(91) : position 92,92
track_bar 101 : top 101,560 : left 101,10 : position 101,91 track_bar 102 : top 102,560 : left 102,left(101)+width(101) : position 102,92
button 1001 : top 1001,10 :left 1001,400 : caption 1001,"Plat" : on_click 1001,ClientArea button 1002 : top 1002,40 :left 1002,400 : caption 1002,"3D" : on_click 1002,WindowArea
dll_on "KGF.dll"
end
ClientArea: res% = dll_call1("ClientAreaAsRegion",handle(0)) : ' ok res% = dll_call1("ClientAreaAsRegion",handle(1)) : ' ok res% = dll_call1("ClientAreaAsRegion",handle(11)) : ' ok res% = dll_call1("ClientAreaAsRegion",handle(21)) : ' ne marche pas pour un bouton res% = dll_call1("ClientAreaAsRegion",handle(31)) : ' ok res% = dll_call1("ClientAreaAsRegion",handle(41)) : ' ok res% = dll_call1("ClientAreaAsRegion",handle(51)) : ' ok res% = dll_call1("ClientAreaAsRegion",handle(61)) : ' ok res% = dll_call1("ClientAreaAsRegion",handle(71)) : ' ok res% = dll_call1("ClientAreaAsRegion",handle(81)) : ' ok res% = dll_call1("ClientAreaAsRegion",handle(91)) : ' ne marche que partiellement res% = dll_call1("ClientAreaAsRegion",handle(101)) : ' ne marche pas return
WindowArea: res% = dll_call1("WindowAreaAsRegion",handle(0)) : ' ok res% = dll_call1("WindowAreaAsRegion",handle(1)) : ' ok res% = dll_call1("WindowAreaAsRegion",handle(11)) : ' ok res% = dll_call1("WindowAreaAsRegion",handle(21)) : ' ne marche pas pour un bouton res% = dll_call1("WindowAreaAsRegion",handle(31)) : ' ok res% = dll_call1("WindowAreaAsRegion",handle(41)) : ' ok res% = dll_call1("WindowAreaAsRegion",handle(51)) : ' ok res% = dll_call1("WindowAreaAsRegion",handle(61)) : ' ok res% = dll_call1("WindowAreaAsRegion",handle(71)) : ' ok res% = dll_call1("WindowAreaAsRegion",handle(81)) : ' ok res% = dll_call1("WindowAreaAsRegion",handle(91)) : ' ne marche que partiellement res% = dll_call1("WindowAreaAsRegion",handle(101)) : ' ne marche pas return
Ca marche maintenant également avec LIST, FORM, SPIN, GRID, CHECK, PROGRESS_BAR, SCROLL_BAR et COMBO. LEs objets HVIEWER et PICTURE sont naturellement en style "flat". | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Début des objets en style "plat" Jeu 3 Mai 2018 - 11:55 | |
| Ca marche maintenant pour un objet BUTTON également: - Code:
-
' test_ClientAreaAsRegion.bas
label ClientArea, WindowArea dim res%
width 0,1200 : height 0,750
edit 1 : top 1,10 : left 1,10 : text 1,"Edit 1" edit 2 : top 2,10 : left 2,left(1)+width(1) : text 2,"Edit 2"
memo 11 : top 11,40 : left 11,10 : item_add 11,"Memo 11" memo 12 : top 12,40 : left 12,left(11)+width(11) : item_add 12,"Memo 12"
button 21 : top 21,140 : left 21,10 : caption 21,"Button 21" button 22 : top 22,140 : left 22,left(21)+width(21) : caption 22,"Button 22"
combo 31 : top 31,170 : left 31,10 : item_add 31,"Combo 31" : text 31,"Combo 31" combo 32 : top 32,170 : left 32,left(31)+width(31) : item_add 32,"Combo 32" : text 32,"Combo 32"
list 41 : top 41,200 : left 41,10 : item_add 41,"List 41" list 42 : top 42,200 : left 42,left(41)+width(41) : item_add 42,"List 42"
spin 51 : top 51,310 : left 51,10 : position 51,51 spin 52 : top 52,310 : left 52,left(51)+width(51) : position 52,52
grid 61 : top 61,340 : left 61,10 : grid_write 61,1,1,"grid 61" grid 62 : top 62,340 : left 62,left(61)+width(61) : grid_write 62,1,1,"grid 62"
check 71 : top 71,470 : left 71,10 : caption 71,"check 71" check 72 : top 72,470 : left 72,left(71)+width(71) : caption 72,"check 72"
' hviewer est déjà en "plat" ' picture est déjà en "plat" progress_bar 81 : top 81,500 : left 81,10 : position 81,81 progress_bar 82 : top 82,500 : left 82,left(81)+width(81) : position 82,82
scroll_bar 91 : top 91,530 : left 91,10 : position 91,91 scroll_bar 92 : top 92,530 : left 92,left(91)+width(91) : position 92,92
track_bar 101 : top 101,560 : left 101,10 : position 101,91 track_bar 102 : top 102,560 : left 102,left(101)+width(101) : position 102,92
button 1001 : top 1001,10 :left 1001,400 : caption 1001,"Plat" : on_click 1001,ClientArea button 1002 : top 1002,40 :left 1002,400 : caption 1002,"3D" : on_click 1002,WindowArea
dll_on "KGF.dll"
end
ClientArea: res% = dll_call1("ClientAreaAsRegion",handle(0)) : ' ok res% = dll_call1("ClientAreaAsRegion",handle(1)) : ' ok res% = dll_call1("ClientAreaAsRegion",handle(11)) : ' ok res% = dll_call1("ClientAreaAsRegion",handle(21)) : ' ok res% = dll_call1("ClientAreaAsRegion",handle(31)) : ' ok res% = dll_call1("ClientAreaAsRegion",handle(41)) : ' ok res% = dll_call1("ClientAreaAsRegion",handle(51)) : ' ok res% = dll_call1("ClientAreaAsRegion",handle(61)) : ' ok res% = dll_call1("ClientAreaAsRegion",handle(71)) : ' ok res% = dll_call1("ClientAreaAsRegion",handle(81)) : ' ok res% = dll_call1("ClientAreaAsRegion",handle(91)) : ' ne marche que partiellement res% = dll_call1("ClientAreaAsRegion",handle(101)) : ' ne marche pas return
WindowArea: res% = dll_call1("WindowAreaAsRegion",handle(0)) : ' ok res% = dll_call1("WindowAreaAsRegion",handle(1)) : ' ok res% = dll_call1("WindowAreaAsRegion",handle(11)) : ' ok res% = dll_call1("WindowAreaAsRegion",handle(21)) : ' ok res% = dll_call1("WindowAreaAsRegion",handle(31)) : ' ok res% = dll_call1("WindowAreaAsRegion",handle(41)) : ' ok res% = dll_call1("WindowAreaAsRegion",handle(51)) : ' ok res% = dll_call1("WindowAreaAsRegion",handle(61)) : ' ok res% = dll_call1("WindowAreaAsRegion",handle(71)) : ' ok res% = dll_call1("WindowAreaAsRegion",handle(81)) : ' ok res% = dll_call1("WindowAreaAsRegion",handle(91)) : ' ne marche que partiellement res% = dll_call1("WindowAreaAsRegion",handle(101)) : ' ne marche pas return
KGF.dll à jour sur mon WebDav dossier DLLs et sur les deux sites internet. | |
| | | Fredisland
Nombre de messages : 261 Date d'inscription : 30/03/2018
| Sujet: Re: Début des objets en style "plat" Jeu 3 Mai 2018 - 17:45 | |
| C'est royal l!!! Tu m'as fait définitivement adopter ta DLL ... Tu t'attaques à quels objets maintenant ? SYNEDIT, CONTAINER, PANEL ? | |
| | | Fredisland
Nombre de messages : 261 Date d'inscription : 30/03/2018
| Sujet: Re: Début des objets en style "plat" Jeu 3 Mai 2018 - 22:44 | |
| - Klaus a écrit:
- LEs objets HVIEWER et PICTURE sont naturellement en style "flat".
Le button_picture quand à lui conserve un léger effet 3D quand enfoncé (et d'ailleurs, contrairement au classique button, son état initiale ne revient pas automatiquement). Il mériterait de se faire "flatter" lui aussi. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Début des objets en style "plat" Jeu 3 Mai 2018 - 23:51 | |
| PANEL et BUTTON_PICTURE marchent aussi: - Code:
-
' test_ClientAreaAsRegion.bas
label ClientArea, WindowArea dim res%
width 0,1200 : height 0,750
edit 1 : top 1,10 : left 1,10 : text 1,"Edit 1" edit 2 : top 2,10 : left 2,left(1)+width(1) : text 2,"Edit 2"
memo 11 : top 11,40 : left 11,10 : item_add 11,"Memo 11" memo 12 : top 12,40 : left 12,left(11)+width(11) : item_add 12,"Memo 12"
button 21 : top 21,140 : left 21,10 : caption 21,"Button 21" button 22 : top 22,140 : left 22,left(21)+width(21) : caption 22,"Button 22"
combo 31 : top 31,170 : left 31,10 : item_add 31,"Combo 31" : text 31,"Combo 31" combo 32 : top 32,170 : left 32,left(31)+width(31) : item_add 32,"Combo 32" : text 32,"Combo 32"
list 41 : top 41,200 : left 41,10 : item_add 41,"List 41" list 42 : top 42,200 : left 42,left(41)+width(41) : item_add 42,"List 42"
spin 51 : top 51,310 : left 51,10 : position 51,51 spin 52 : top 52,310 : left 52,left(51)+width(51) : position 52,52
grid 61 : top 61,340 : left 61,10 : grid_write 61,1,1,"grid 61" grid 62 : top 62,340 : left 62,left(61)+width(61) : grid_write 62,1,1,"grid 62"
check 71 : top 71,470 : left 71,10 : caption 71,"check 71" check 72 : top 72,470 : left 72,left(71)+width(71) : caption 72,"check 72"
' hviewer est déjà en "plat" ' picture est déjà en "plat" progress_bar 81 : top 81,500 : left 81,10 : position 81,81 progress_bar 82 : top 82,500 : left 82,left(81)+width(81) : position 82,82
scroll_bar 91 : top 91,530 : left 91,10 : position 91,91 scroll_bar 92 : top 92,530 : left 92,left(91)+width(91) : position 92,92
track_bar 101 : top 101,560 : left 101,10 : position 101,91 track_bar 102 : top 102,560 : left 102,left(101)+width(101) : position 102,92
button_picture 111 : top 111,590 :left 111,10 : caption 111,"button_picture 111" button_picture 112 : top 112,590 :left 112,left(111)+width(111) : caption 112,"button_picture 112"
panel 121 : top 121,620 :left 121,10 : height 121,30 : caption 121,"panel 121" panel 122 : top 122,620 :left 122,left(121)+width(121) : height 122,30 : caption 122,"panel 122"
button 1001 : top 1001,10 :left 1001,400 : caption 1001,"Plat" : on_click 1001,ClientArea button 1002 : top 1002,40 :left 1002,400 : caption 1002,"3D" : on_click 1002,WindowArea
dll_on "KGF.dll"
end
ClientArea: res% = dll_call1("UseClientAreaAsRegion",handle(0)) : ' ok res% = dll_call1("UseClientAreaAsRegion",handle(1)) : ' ok res% = dll_call1("UseClientAreaAsRegion",handle(11)) : ' ok res% = dll_call1("UseClientAreaAsRegion",handle(21)) : ' ok res% = dll_call1("UseClientAreaAsRegion",handle(31)) : ' ok res% = dll_call1("UseClientAreaAsRegion",handle(41)) : ' ok res% = dll_call1("UseClientAreaAsRegion",handle(51)) : ' ok res% = dll_call1("UseClientAreaAsRegion",handle(61)) : ' ok res% = dll_call1("UseClientAreaAsRegion",handle(71)) : ' ok res% = dll_call1("UseClientAreaAsRegion",handle(81)) : ' ok res% = dll_call1("UseClientAreaAsRegion",handle(91)) : ' ne marche que partiellement res% = dll_call1("UseClientAreaAsRegion",handle(101)) : ' ne marche pas res% = dll_call1("UseClientAreaAsRegion",handle(111)) : ' ok res% = dll_call1("UseClientAreaAsRegion",handle(121)) : ' ok return
WindowArea: res% = dll_call1("UseWindowAreaAsRegion",handle(0)) : ' ok res% = dll_call1("UseWindowAreaAsRegion",handle(1)) : ' ok res% = dll_call1("UseWindowAreaAsRegion",handle(11)) : ' ok res% = dll_call1("UseWindowAreaAsRegion",handle(21)) : ' ok res% = dll_call1("UseWindowAreaAsRegion",handle(31)) : ' ok res% = dll_call1("UseWindowAreaAsRegion",handle(41)) : ' ok res% = dll_call1("UseWindowAreaAsRegion",handle(51)) : ' ok res% = dll_call1("UseWindowAreaAsRegion",handle(61)) : ' ok res% = dll_call1("UseWindowAreaAsRegion",handle(71)) : ' ok res% = dll_call1("UseWindowAreaAsRegion",handle(81)) : ' ok res% = dll_call1("UseWindowAreaAsRegion",handle(91)) : ' ne marche que partiellement res% = dll_call1("UseWindowAreaAsRegion",handle(101)) : ' ne marche pas res% = dll_call1("UseWindowAreaAsRegion",handle(111)) : ' ok res% = dll_call1("UseWindowAreaAsRegion",handle(121)) : ' ok return
J'ai changé les noms des fonctions. Désolé. Recharge la DLL à partir de mon WebDav dossier DLLs ou un des deux sites internet. Je pense que ça marche pour les autres objets aussi (CONTAINER, CONTAINER_OPTION, ...) mais je n'ai pas le temps de tester ça maintenant. Essaie de faire des essais de ton côté, et signale les objets pour lesquels ça pose problème. Encore une fois: Ce n'est pas la peine de tester HVIEWER et PICTURE - ils sont en style plat de toutes façons. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Début des objets en style "plat" Ven 4 Mai 2018 - 8:53 | |
| CONTAINER et CONTAINER_OPTION machent aussi, bien que la ligne de titre pose un problème - le titre est placé au milieu de la ligne du trait horizontal. Si le supprime cela pour CONTAINER, ça devient identique à un PANEL, et il faut placer un ALPHA pour afficher le titre. Idem pour CONTAINER_OPTION. Mais là, je l'ai fait d'office, car on ne peut pas remplacer cet objet par un PANEL. Ca marche également pour un SYNEDIT. Voici le code de démo: - Code:
-
' test_ClientAreaAsRegion.bas
label ClientArea, WindowArea dim res%
width 0,1200 : height 0,750
edit 1 : top 1,10 : left 1,10 : text 1,"Edit 1" edit 2 : top 2,10 : left 2,left(1)+width(1) : text 2,"Edit 2"
memo 11 : top 11,40 : left 11,10 : item_add 11,"Memo 11" memo 12 : top 12,40 : left 12,left(11)+width(11) : item_add 12,"Memo 12"
button 21 : top 21,140 : left 21,10 : caption 21,"Button 21" button 22 : top 22,140 : left 22,left(21)+width(21) : caption 22,"Button 22"
combo 31 : top 31,170 : left 31,10 : item_add 31,"Combo 31" : text 31,"Combo 31" combo 32 : top 32,170 : left 32,left(31)+width(31) : item_add 32,"Combo 32" : text 32,"Combo 32"
list 41 : top 41,200 : left 41,10 : item_add 41,"List 41" list 42 : top 42,200 : left 42,left(41)+width(41) : item_add 42,"List 42"
spin 51 : top 51,310 : left 51,10 : position 51,51 spin 52 : top 52,310 : left 52,left(51)+width(51) : position 52,52
grid 61 : top 61,340 : left 61,10 : grid_write 61,1,1,"grid 61" grid 62 : top 62,340 : left 62,left(61)+width(61) : grid_write 62,1,1,"grid 62"
check 71 : top 71,470 : left 71,10 : caption 71,"check 71" check 72 : top 72,470 : left 72,left(71)+width(71) : caption 72,"check 72"
' hviewer est déjà en "plat" ' picture est déjà en "plat" progress_bar 81 : top 81,500 : left 81,10 : position 81,81 progress_bar 82 : top 82,500 : left 82,left(81)+width(81) : position 82,82
scroll_bar 91 : top 91,530 : left 91,10 : position 91,91 scroll_bar 92 : top 92,530 : left 92,left(91)+width(91) : position 92,92
track_bar 101 : top 101,560 : left 101,10 : position 101,91 track_bar 102 : top 102,560 : left 102,left(101)+width(101) : position 102,92
button_picture 111 : top 111,590 :left 111,10 : caption 111,"button_picture 111" button_picture 112 : top 112,590 :left 112,left(111)+width(111) : caption 112,"button_picture 112"
panel 121 : top 121,10 :left 121,600 : height 121,30 : caption 121,"panel 121" panel 122 : top 122,10 :left 122,left(121)+width(121) : height 122,30 : caption 122,"panel 122"
container 131 : top 131,50 :left 131,600 : height 131,30 : caption 131,"container 131" container 132 : top 132,50 :left 132,left(131)+width(131) : height 132,30 : caption 122,"container 132"
container_option 141 : top 141,90 :left 141,600 : height 141,30 : caption 141,"container_option 121" container_option 142 : top 142,90 :left 142,left(141)+width(141) : height 142,30 : caption 142,"container_option 122"
synedit 151 : top 151,130 :left 151,600 : height 151,40 : width 151,180 : text 151,"Synedit 151" synedit 152 : top 152,130 :left 152,left(151)+width(151) : height 152,40 : width 152,180 : text 152,"Synedit 152"
button 1001 : top 1001,10 :left 1001,400 : caption 1001,"Plat" : on_click 1001,ClientArea button 1002 : top 1002,40 :left 1002,400 : caption 1002,"3D" : on_click 1002,WindowArea
dll_on "KGF.dll"
end
ClientArea: res% = dll_call1("UseClientAreaAsRegion",handle(0)) : ' ok res% = dll_call1("UseClientAreaAsRegion",handle(1)) : ' ok res% = dll_call1("UseClientAreaAsRegion",handle(11)) : ' ok res% = dll_call1("UseClientAreaAsRegion",handle(21)) : ' ok res% = dll_call1("UseClientAreaAsRegion",handle(31)) : ' ok res% = dll_call1("UseClientAreaAsRegion",handle(41)) : ' ok res% = dll_call1("UseClientAreaAsRegion",handle(51)) : ' ok res% = dll_call1("UseClientAreaAsRegion",handle(61)) : ' ok res% = dll_call1("UseClientAreaAsRegion",handle(71)) : ' ok res% = dll_call1("UseClientAreaAsRegion",handle(81)) : ' ok res% = dll_call1("UseClientAreaAsRegion",handle(91)) : ' ne marche que partiellement res% = dll_call1("UseClientAreaAsRegion",handle(101)) : ' ne marche pas res% = dll_call1("UseClientAreaAsRegion",handle(111)) : ' ok res% = dll_call1("UseClientAreaAsRegion",handle(121)) : ' ok res% = dll_call1("UseClientAreaAsRegion",handle(131)) : ' ok mais pas joli res% = dll_call1("UseClientAreaAsRegion",handle(141)) : ' ok mais pas joli res% = dll_call1("UseClientAreaAsRegion",handle(151)) : ' ok mais pas joli return
WindowArea: res% = dll_call1("ClearWindowRegion",handle(0)) : ' ok res% = dll_call1("ClearWindowRegion",handle(1)) : ' ok res% = dll_call1("ClearWindowRegion",handle(11)) : ' ok res% = dll_call1("ClearWindowRegion",handle(21)) : ' ok res% = dll_call1("ClearWindowRegion",handle(31)) : ' ok res% = dll_call1("ClearWindowRegion",handle(41)) : ' ok res% = dll_call1("ClearWindowRegion",handle(51)) : ' ok res% = dll_call1("ClearWindowRegion",handle(61)) : ' ok res% = dll_call1("ClearWindowRegion",handle(71)) : ' ok res% = dll_call1("ClearWindowRegion",handle(81)) : ' ok res% = dll_call1("ClearWindowRegion",handle(91)) : ' ne marche que partiellement res% = dll_call1("ClearWindowRegion",handle(101)) : ' ne marche pas res% = dll_call1("ClearWindowRegion",handle(111)) : ' ok res% = dll_call1("ClearWindowRegion",handle(121)) : ' ok res% = dll_call1("ClearWindowRegion",handle(131)) : ' ok mais pas joli res% = dll_call1("ClearWindowRegion",handle(141)) : ' ok mais pas joli res% = dll_call1("ClearWindowRegion",handle(151)) : ' ok mais pas joli return
Comme d'habitude, recharger la DLL à partir du WebDav dossier DLLs ou à partir d'un des deux sites internet. | |
| | | Fredisland
Nombre de messages : 261 Date d'inscription : 30/03/2018
| Sujet: Re: Début des objets en style "plat" Ven 4 Mai 2018 - 9:56 | |
| - Klaus a écrit:
- Comme d'habitude, recharger la DLL à partir du WebDav dossier DLLs ou à partir d'un des deux sites internet.
Je viens effectivement de charger la dernière version de la DLL sur ton webdav, et pour le coup j'ai une erreur pour chaque objet modifié : --------------------------- Panoramic_editor --------------------------- (29) Not correct arithmetic expression : Error in function. --------------------------- OK --------------------------- | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Début des objets en style "plat" Ven 4 Mai 2018 - 10:02 | |
| Désolé - j'ai oublié de préciser que j'ai (encore) changé le nom d'une fonction: UseWindowAreaAsRegion devient ClearWindowRegion. | |
| | | Fredisland
Nombre de messages : 261 Date d'inscription : 30/03/2018
| Sujet: Re: Début des objets en style "plat" Ven 4 Mai 2018 - 10:09 | |
| - Klaus a écrit:
- Désolé - j'ai oublié de préciser que j'ai (encore) changé le nom d'une fonction: UseWindowAreaAsRegion devient ClearWindowRegion.
C'est bon, ça fonctionne ! J'aurais dû dès le départ reprendre ton nouveau listing. Merci pour ta réactivité.
Dernière édition par Fredisland le Ven 4 Mai 2018 - 10:22, édité 1 fois | |
| | | Fredisland
Nombre de messages : 261 Date d'inscription : 30/03/2018
| Sujet: Re: Début des objets en style "plat" Ven 4 Mai 2018 - 10:22 | |
| Bon, je viens au rapport maintenant que tout est prêt pour réaliser des interfaces "Flat". Tout est nickel, avec quelques petits trucs qui coincent sur certains objets dont la bordure 3D a ét supprimée. Mais ça je doute qu'on puisse y faire grand chose, toi seul pourra le confirmer : - SPIN : en haut de la flèche haut, il subsiste un résidu de ligne blanche. - GRID : la grille est tronquéesur les premières ligne et colonne, et le scrollbar a disparu - CHECK : il subsiste un résidu de ligne en haut - BUTTON PICTURE : autant le BUTTON est épuré, autant il subiste un résidu de 3D sur les bords droite et bas, mais uniquement lorsque le bouton est cliqué. Voilà. Je vais de ce pas appliquer cette flatitude sur mon éditeur pour voir un peu la gueule sur une application complète... Et encore merci pour ce superbe boulot. ----------------------------------------- Je reviens au rapport : Une fois mis à plat, les objets ne plus redimensionnables !!!! | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Début des objets en style "plat" Ven 4 Mai 2018 - 14:29 | |
| - Citation :
- SPIN : en haut de la flèche haut, il subsiste un résidu de ligne blanche.
Je pourrai corriger cela ce soir. - Code:
-
GRID : la grille est tronquéesur les premières ligne et colonne, et le scrollbar a disparu Je vais analyser cela. Je pense que je pourrai le corriger également ce soir. - Citation :
- CHECK : il subsiste un résidu de ligne en haut
Je pourrai corriger cela ce soir. - Citation :
- BUTTON PICTURE : autant le BUTTON est épuré, autant il subiste un résidu de 3D sur les bords droite et bas, mais uniquement lorsque le bouton est cliqué.
Je pourrai corriger cela ce soir. | |
| | | Fredisland
Nombre de messages : 261 Date d'inscription : 30/03/2018
| Sujet: Re: Début des objets en style "plat" Ven 4 Mai 2018 - 14:53 | |
| - Klaus a écrit:
-
- Citation :
- SPIN : en haut de la flèche haut, il subsiste un résidu de ligne blanche.
Je pourrai corriger cela ce soir.
- Code:
-
GRID : la grille est tronquéesur les premières ligne et colonne, et le scrollbar a disparu Je vais analyser cela. Je pense que je pourrai le corriger également ce soir.
- Citation :
- CHECK : il subsiste un résidu de ligne en haut
Je pourrai corriger cela ce soir.
- Citation :
- BUTTON PICTURE : autant le BUTTON est épuré, autant il subiste un résidu de 3D sur les bords droite et bas, mais uniquement lorsque le bouton est cliqué.
Je pourrai corriger cela ce soir.
Quelqu'un t'as déjà dit que tu étais formidable ? Et tu penses que c'est soluble l'histoire de l'impossiblité de redimensionner ? | |
| | | Contenu sponsorisé
| Sujet: Re: Début des objets en style "plat" | |
| |
| | | | Début des objets en style "plat" | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |