Soyez le premier à donner votre avis sur cette source.
Vue 16 378 fois - Téléchargée 1 985 fois
unit UDivXMainForm; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, StdCtrls, DBCtrls, DB, DBTables, Buttons, ImgList, ComCtrls, Grids, DBGrids; type TDivXMainForm = class(TForm) MainMenu1: TMainMenu; Fichier1: TMenuItem; mnuEnregistrer1: TMenuItem; N1: TMenuItem; mnuQuitter1: TMenuItem; Afficher1: TMenuItem; N2: TMenuItem; btnAddModify: TBitBtn; Ajouter1: TMenuItem; mnuDivxEnStock: TMenuItem; mnuDivxPretes: TMenuItem; mnuUnDivx1: TMenuItem; APropos1: TMenuItem; Label1: TLabel; GroupBox1: TGroupBox; Label2: TLabel; Label3: TLabel; Label7: TLabel; Label8: TLabel; DBText1: TDBText; DBTextNbCd: TDBText; DBTextDateArrivee: TDBText; DBMemoObservations: TDBMemo; StatusBar1: TStatusBar; chbxNonVus: TCheckBox; chbxPretes: TCheckBox; DBCheckBox1: TDBCheckBox; DBCheckBox2: TDBCheckBox; DBGrid1: TDBGrid; mnuDivxNonVus: TMenuItem; Label4: TLabel; DBTextStock: TDBText; btnModifyObservations: TSpeedButton; generer: TMenuItem; SaveDialog1: TSaveDialog; procedure FormCreate(Sender: TObject); procedure mnuQuitter1Click(Sender: TObject); procedure btnAddModifyClick(Sender: TObject); procedure chbxNonVusClick(Sender: TObject); procedure mnuDivxNonVusClick(Sender: TObject); procedure mnuDivxEnStockClick(Sender: TObject); procedure mnuDivxPretesClick(Sender: TObject); procedure chbxPretesClick(Sender: TObject); procedure btnModifyObservationsClick(Sender: TObject); procedure genererClick(Sender: TObject); end; var DivXMainForm: TDivXMainForm; implementation uses UDmDivX, UAddDeleteModifyForm; {$R *.dfm} {$R LockBtn.res} //ressources dcontenant les bitmap du bouton procedure TDivXMainForm.FormCreate(Sender: TObject); begin //Afficher le nombre total de CD contenus dans la table StatusBar1.Panels[0].Text := Format(sNbDivX, [dmDivX.tblDivX.RecordCount]); end; procedure TDivXMainForm.mnuQuitter1Click(Sender: TObject); begin close; end; procedure TDivXMainForm.btnAddModifyClick(Sender: TObject); begin { Appel de la fiche permettant d'ajouter/Supprimer/modifier le contenu de la table DivX} DivXAddDeleteModifyForm.Show; end; procedure TDivXMainForm.chbxNonVusClick(Sender: TObject); begin //Au passage, Activer/Désactiver la case à cocher chbxPretes chbxPretes.Enabled := not chbxNonVus.Checked; //Actualise l'élément de menu DivXNonVus mnuDivxNonVus.Checked := chbxNonVus.Checked; dmDivX.AfficherNonVus(chbxNonVus.Checked); end; procedure TDivXMainForm.mnuDivxNonVusClick(Sender: TObject); begin { Resteindre l'affichage aux enregistrements pour lesquels le champ Vu est à faux } chbxNonVus.Checked := mnuDivxNonVus.Checked; dmDivX.AfficherNonVus(mnuDivxNonVus.Checked); end; procedure TDivXMainForm.mnuDivxEnStockClick(Sender: TObject); begin { Afficher les enregistrements pour lesquels le champ Stock vaut vrai, donc non prêtés. } chbxPretes.Checked := not mnuDivxEnStock.Checked; dmDivX.AfficherPretes(not mnuDivxEnStock.Checked); end; procedure TDivXMainForm.mnuDivxPretesClick(Sender: TObject); begin { Les DivX prêtés correspondent aux enregistrements pour lesquels le champ Stock est à faux } chbxPretes.Checked := mnuDivxPretes.Checked; dmDivX.AfficherPretes(mnuDivxPretes.Checked); end; procedure TDivXMainForm.chbxPretesClick(Sender: TObject); begin mnuDivxPretes.Checked := chbxPretes.Checked; mnuDivxEnStock.Checked := not chbxPretes.Checked; dmDivX.AfficherPretes(mnuDivxPretes.Checked); end; procedure TDivXMainForm.btnModifyObservationsClick(Sender: TObject); begin {Basculer l'état de DBMemoObservations.ReadOnly } DBMemoObservations.ReadOnly := not DBMemoObservations.ReadOnly; {Selon l'état de DBMemoObservations, afficher une image différente sur le bouton} If DBMemoObservations.ReadOnly then btnModifyObservations.Glyph.LoadFromResourceName(Hinstance, 'LOCKSHUT') else btnModifyObservations.Glyph.LoadFromResourceName(HInstance, 'LOCKOPEN'); end; procedure TDivXMainForm.genererClick(Sender: TObject); var F : TextFile; begin Savedialog1.Filter := 'Fichier Texte (*.txt)|(*.txt)'; Savedialog1.FileName := 'Liste Divx'; Savedialog1.Execute; AssignFile(F,Savedialog1.FileName +'.txt'); Rewrite(F); while not dmDivx.tblDivX.Eof do begin Writeln(F,dmDivx.tblDivX.FieldByName('Divx').AsString); dmDivx.tblDivX.Next; end; CloseFile(F); dmDivx.tblDivX.First; end; end. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- unit UDmDivX; interface uses SysUtils, Classes, DB, DBTables; type TdmDivX = class(TDataModule) dsDivX: TDataSource; tblDivX: TTable; procedure DataModuleCreate(Sender: TObject); private { Déclarations privées } public { Afficher les DivX non vus } procedure AfficherNonVus(NonVus : boolean = True); { Afficher les DivX prêtés} procedure AfficherPretes(Pretes : boolean = True); end; var dmDivX: TdmDivX; ResourceString sNbDivX = 'Nombre de DivX affichés : %d'; implementation {$R *.dfm} {----------------------------------------------------------------------------- Procedure: TdmDivX.AfficherNonVus Author: delphiprog Date: 03-janv.-2003 Arguments: NonVus: boolean; filtre la table ssi NonVus = True Result: None -----------------------------------------------------------------------------} procedure TdmDivX.AfficherNonVus(NonVus: boolean); begin if NonVus then tblDivX.Filter := 'vu = ''False'''; tblDivX.Filtered := NonVus; end; {----------------------------------------------------------------------------- Procedure: TdmDivX.AfficherPretes Author: delphiprog Date: 03-janv.-2003 Arguments: Pretes: boolean; filtre la table ssi Pretes = True Result: None -----------------------------------------------------------------------------} procedure TdmDivX.AfficherPretes(Pretes: boolean); begin if Pretes then tblDivX.Filter := 'Stock <> '''''; tblDivX.Filtered := Pretes; end; procedure TdmDivX.DataModuleCreate(Sender: TObject); begin { Conserver le temps de la mise au point de l'application. } if not tblDivX.Active then tblDivX.Active := True; end; end. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- unit UAddDeleteModifyForm; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, DBCtrls, DB, DBTables, Grids, DBGrids, ComCtrls; type TDivXAddDeleteModifyForm = class(TForm) DBGrid1: TDBGrid; Panel1: TPanel; Label1: TLabel; DBNavigator1: TDBNavigator; StatusBar1: TStatusBar; procedure FormPaint(Sender: TObject); end; var DivXAddDeleteModifyForm: TDivXAddDeleteModifyForm; implementation uses UDmDivX; {$R *.dfm} procedure TDivXAddDeleteModifyForm.FormPaint(Sender: TObject); begin { Afficher le nombre d'enregistrements de la table DivX répondant aux critères de filtrage} StatusBar1.SimpleText := Format(sNbDivX, [dmDivX.TblDivX.RecordCount]); end; end.
7 janv. 2004 à 19:29
26 oct. 2003 à 15:58
Ce logiciel est freeware et dispo sur : http://pardalissoftware.free.fr
26 févr. 2003 à 16:02
7 janv. 2003 à 13:48
Merci.
5 janv. 2003 à 00:14
:-)
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.