Gestion de temps de développement..

Programmation d'applications complexes
Avatar de l’utilisateur
microdevweb
Messages : 1802
Inscription : mer. 29/juin/2011 14:11
Localisation : Belgique

Gestion de temps de développement..

Message par microdevweb »

Bonjour,

Voici une logiciel de gestion de temps de développement


Image

Version Beta 1.14 (du 11 septembre 2012) n'hésitez pas à me signaler les bug. ATTENTION quant vous fermer la fenêtre vous rendez la fenêtre invisible mais vous ne quitter pas le programme F8 pour rendre la fenêtre à nouveau visible click droit sur l'icone dans le Systray (Barre de menu) pour quitter.

Voici le lien pour télécharger
http://www.mediafire.com/?dq8lc5ro8tam4mc
Dernière modification par microdevweb le mar. 11/sept./2012 9:44, modifié 5 fois.
Windows 10 64 bits PB: 5.70 ; 5.72 LST
Work at Centre Spatial de Liège
Avatar de l’utilisateur
falsam
Messages : 7324
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Gestion de temps de développement..

Message par falsam »

J'aurais préféré une application portable :)

Tu ne gères pas les apostrophes.
Ex : Réunir l'équipe

ça doit venir de ta requête de mise à jour de la base. Encadre tes variables par Chr(34)
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
microdevweb
Messages : 1802
Inscription : mer. 29/juin/2011 14:11
Localisation : Belgique

Re: Gestion de temps de développement..

Message par microdevweb »

Oui j'ai remarqué un bug j'y travaille... Merci
Windows 10 64 bits PB: 5.70 ; 5.72 LST
Work at Centre Spatial de Liège
Avatar de l’utilisateur
falsam
Messages : 7324
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Gestion de temps de développement..

Message par falsam »

Teste aussi les guillemets.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
jbernard13
Messages : 1501
Inscription : dim. 18/avr./2004 15:04
Localisation : sud de la france

Re: Gestion de temps de développement..

Message par jbernard13 »

Il fait quoi ton programme svp ?
Jbernard13
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: Gestion de temps de développement..

Message par Ar-S »

Version Beta n'hésitez pas à me signaler les bug. ATTENTION quant vous fermer la fenêtre vous rendez la fenêtre invisible mais vous ne quitter pas le programme F8 pour rendre la fenêtre à nouveau visible click droit sur l'icone dans le Systray (Barre de menu) pour quitter.
Un petit messagerequester() ou une infobulle (balloon) sur le systray serait un plus pour remédier à ce soucis lorsqu'on ferme.
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Avatar de l’utilisateur
microdevweb
Messages : 1802
Inscription : mer. 29/juin/2011 14:11
Localisation : Belgique

Re: Gestion de temps de développement..

Message par microdevweb »

Merci Falsam,

Corrections faites.
Bonjour Ar_S,
un Messarequester deviendrais pénible je penses à force ou alors seulement au première usage. Hummm je ferais cela dans la prochaine version. Notes qu'à la base j'ai fais ce logiciel pour un usage perso.
Windows 10 64 bits PB: 5.70 ; 5.72 LST
Work at Centre Spatial de Liège
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: Gestion de temps de développement..

Message par Ar-S »

Oui c'est sûr que ça serait lourd, l'infobulle est plus judicieuse.
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Avatar de l’utilisateur
falsam
Messages : 7324
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Gestion de temps de développement..

Message par falsam »

@microdevweb : j'ai de nouveau modifié le code que tu connais déja de telle manière que si un utilisateur cache la fenêtre de l'application, une infobulle en zone de notification rappelle à l'utilisateur quelle est la touche à presser pour faire apparaître de nouveau cette fenêtre.

Code : Tout sélectionner

Enumeration
  #Mainform
  #MenuPopUp
  
  #Time  
  #StartTime
  #ElapsedTime
  
  #NOTIFYICONDATA_V4_SIZE = 508
EndEnumeration

;NOTIFYICONDATA structure
;http://msdn.microsoft.com/en-us/library/windows/desktop/bb773352(v=vs.85).aspx
Structure NOTIFYICONDATA_
   cbSize.l
   hwnd.i
   uId.l
   uFlags.l
   uCallbackMessage.l
   hIcon.i
   StructureUnion
      szTip.c[64]
      szTipEx.c[128]
   EndStructureUnion
   dwState.l
   dwStateMask.l
   szInfo.c[256]
   StructureUnion
      uTimeout.l
      uVersion.l
   EndStructureUnion
   szInfoTitle.c[64]
   dwInfoFlags.l
   guidItem.GUID
   hBalloonIcon.i
EndStructure

Global MainformStatus.b

;Le temps qui passe
Procedure Compte_Temps()
  SetGadgetText(#Time, FormatDate("%hh:%ii:%ss", Date()))
  SetGadgetData(#Time, Date()) 
    
  SetGadgetText(#ElapsedTime, FormatDate("%hh:%ii:%ss", GetGadgetData(#Time)-GetGadgetData(#StartTime))) 
EndProcedure

;Afficher un message dans la zone de notification (By : em_uk)
Procedure SysTrayIconBalloon_(uId, hWindow, Title$, Message$, timeOut, flags)
   Protected nId.NOTIFYICONDATA_
   If OSVersion() >= #PB_OS_Windows_Vista
      nId\cbSize = #NOTIFYICONDATA_V3_SIZE
   ElseIf OSVersion() >= #PB_OS_Windows_XP
      nId\cbSize = #NOTIFYICONDATA_V3_SIZE
   ElseIf OSVersion() >= #PB_OS_Windows_2000
      nId\cbSize = #NOTIFYICONDATA_V2_SIZE
   Else
      nId\cbSize = #NOTIFYICONDATA_V1_SIZE
   EndIf
   If nId\cbSize
      nId\uVersion    = 4
      Shell_NotifyIcon_(#NIM_SETVERSION, @nId)
      nId\uId         = uId
      nId\hwnd        = hWindow
      nId\dwInfoFlags = flags
      nId\uFlags      = #NIF_INFO
      nId\uTimeout    = timeOut
      PokeS(@nId\szInfo, Message$, SizeOf(nId\szInfo))
      PokeS(@nId\szInfoTitle, Title$, SizeOf(nId\szInfoTitle))
      ProcedureReturn Shell_NotifyIcon_(#NIM_MODIFY, @nId)
   EndIf
   ProcedureReturn #False
EndProcedure

;Affiche ou chache la fenetre
Procedure ShowHideWindow(*Value)
  Repeat   
    If GetAsyncKeyState_(#VK_F8) & $1 ;Touche F8
     
      If MainformStatus = #False
        HideWindow(#MainForm, #False)
        MainformStatus = #True
        
      Else
        HideWindow(#Mainform, #True)
        MainformStatus = #False
        SysTrayIconBalloon_(1, WindowID(#Mainform),"Information","Touche F8 pour Pour afficher la fenetre", 50, #NIIF_INFO)
      EndIf
     
    EndIf
  ForEver
EndProcedure

MainformStatus=#True

OpenWindow(#MainForm, 100, 150, 300, 150, "SysTray Test", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
CreatePopupMenu(#MenuPopUp)
MenuItem(0, "Afficher la fenetre")
MenuItem(1, "Quitter")

TextGadget(#PB_Any, 10, 20, 80, 20, "Il est")
StringGadget(#Time,100, 20, 80, 24, "00:00:00")

TextGadget(#PB_Any, 10, 45, 80, 20, "Début")
StringGadget(#StartTime,100, 45, 80, 24, "00:00:00")

TextGadget(#PB_Any, 10, 75, 80, 20, "Temps passé")
StringGadget(#ElapsedTime,100, 75, 80, 24, "00:00:00")

AddSysTrayIcon(1, WindowID(#Mainform), LoadIcon_(#Null, #IDI_WARNING))
SysTrayIconToolTip(1, "Touche F8" +#CRLF$+ "Pour afficher la fenetre")

AddWindowTimer(#Mainform, 123, 100)
CreateThread(@ShowHideWindow(), #Null)

;Initialisation de l'heure de début d"exécution
SetGadgetText(#StartTime, FormatDate("%hh:%ii:%ss", Date()))
SetGadgetData(#StartTime, Date()) 

TextGadget(#PB_Any, 10, 120, 280, 20, "Touche F8 pour cacher/afficher  la fenêtre")


Repeat
  Event = WaitWindowEvent(100)    
  
  If Event = #PB_Event_Timer And EventTimer() = 123
    Compte_Temps()
  EndIf    

  
  Select Event
    Case #PB_Event_Menu
      Select EventMenu()
        Case 0
          HideWindow(#Mainform, #False)
        Case 1
          End 
      EndSelect
      
    Case #PB_Event_SysTray
      If EventType() = #PB_EventType_LeftDoubleClick
        HideWindow(#Mainform, #False)
      EndIf
      
      If EventType() = #PB_EventType_RightClick
        DisplayPopupMenu(#MenuPopUp, WindowID(#Mainform))
      EndIf
      
      
    Case #PB_Event_CloseWindow
      End
      
  EndSelect
ForEver
Dernière modification par falsam le lun. 10/sept./2012 20:20, modifié 1 fois.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
microdevweb
Messages : 1802
Inscription : mer. 29/juin/2011 14:11
Localisation : Belgique

Re: Gestion de temps de développement..

Message par microdevweb »

Merci pour ce code Falsam,

Je vais regarder à tout ça...

Nouvelle version 1.11 avec de nombreuse correction de bug
Windows 10 64 bits PB: 5.70 ; 5.72 LST
Work at Centre Spatial de Liège
Avatar de l’utilisateur
microdevweb
Messages : 1802
Inscription : mer. 29/juin/2011 14:11
Localisation : Belgique

Re: Gestion de temps de développement..

Message par microdevweb »

Voila version 1.12 avec une infobulle quant on rend la fenêtre invisible (merci à Falsam pour son aide précieuse)
Windows 10 64 bits PB: 5.70 ; 5.72 LST
Work at Centre Spatial de Liège
Avatar de l’utilisateur
falsam
Messages : 7324
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Gestion de temps de développement..

Message par falsam »

Ooops à mon avis il y a un souci.
-Pas de base de données à l'installation.
-La touche F8 est devenu inactive. L'application apparait bien dans le processus du gestionnaire de tache.
-Impossible de créer une tache, mais sans base de données ça me parait normal.
-Ton setup est toujours estampillé 1.11

Je pense que tu devrais procéder à une installation vierge de ton application avant de la distribuer.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
microdevweb
Messages : 1802
Inscription : mer. 29/juin/2011 14:11
Localisation : Belgique

Re: Gestion de temps de développement..

Message par microdevweb »

Oui il y a un sérieux Bug,

Je remonte tous mes bkp pour voir le soucis. Heureusement que j'ai patché toutes les modification depuis la version 1.0
Windows 10 64 bits PB: 5.70 ; 5.72 LST
Work at Centre Spatial de Liège
Avatar de l’utilisateur
microdevweb
Messages : 1802
Inscription : mer. 29/juin/2011 14:11
Localisation : Belgique

Re: Gestion de temps de développement..

Message par microdevweb »

Voila la version 1.14 (qui ne devrait plus buger)
Le bug se trouvait dans le path 1.11 pour rendre la fenêtre toujours au premier plan
j'ajoute maintenant le StickyWindow à chaque ouverture de fenêtre

Code : Tout sélectionner

Procedure Gere_Blocage_Fenetre()
  DisableWindow(#Window_Main,0)
  If IsWindow(#Window_Project) : DisableWindow(#Window_Project,0) : EndIf
  If IsWindow(#Window_Tache): DisableWindow(#Window_Tache,0) : EndIf
  If IsWindow(#Window_Project) : DisableWindow(#Window_Main,1) : EndIf
  If IsWindow(#Window_Project_Fic) : DisableWindow(#Window_Project,1) : EndIf
  If IsWindow(#Window_Tache): DisableWindow(#Window_Main,1):EndIf
  If IsWindow(#Window_TacheFic): DisableWindow(#Window_Tache,1):EndIf
  If IsWindow(#Window_Historique) : DisableWindow(#Window_Main,1):EndIf
  ;*Path 1.11 * Path 1.14
;   If Not IsWindow(#Window_Project) And Not IsWindow(#Window_Tache) And Not (#Window_Project_Fic)  And Not (#Window_TacheFic) And Not (#Window_Historique) 
;     StickyWindow(#Window_Main,1)
;   Else
;     StickyWindow(#Window_Main,0)
;   EndIf
  ;*
EndProcedure
Windows 10 64 bits PB: 5.70 ; 5.72 LST
Work at Centre Spatial de Liège
Répondre