IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bases de données Delphi Discussion :

[Traitement image] Comment me passer d'un PictureDialog


Sujet :

Bases de données Delphi

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 42
    Points : 18
    Points
    18
    Par défaut [Traitement image] Comment me passer d'un PictureDialog
    Bonjour tout le monde.
    Le programme ci-dessous traite une image qu'on a précédemment séléctionné dans un TopenPictureDialog
    mais je souhaiterai que cette image soit traité lorsque je coche une checkbox ou bien par l'intermediaire d'un timer, en fait ce qu'il me faut c'est me passer de ce picturedialog qui m'embete mais je n'y parviens pas. c'est pour ça que j'aurai grandement besoin d'aide.
    Je vous remercie par avance d'avoir pris le temps de me répondre si réponse il y a.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    unit Unit1;
     
    interface
     
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, jpeg, ExtCtrls, Gauges, ExtDlgs, StdCtrls;
     
    type
      TForm1 = class(TForm)
        Image1: TImage;
        Gauge1: TGauge;
        BDDI: TOpenPictureDialog;
        procedure Image1Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;
        TypeRGB       = Record
                            Bleu, Vert, Rouge : Byte;
                      End;
         TypeTRGBArray = Array [0..12000] Of TypeRGB;
         TypePRGBArray = ^TypeTRGBArray;
     
     
    var
      PixelsI2:array[0..9000000] of integer;
       n,n2:integer;
      Form1: TForm1;
     
    implementation
     
    {$R *.dfm}
     
    function Ouvririmg(BDImage:TOpenPictureDialog;Image:Timage):boolean;
    var
    jpg:Tjpegimage; // variable pr creation jpg(Mettre Jpeg Dans USES)
    begin
    result:=false; // si cette condition n'est pas bonne ben pas de fonction
     
    if BDImage.Execute then
    begin
     jpg:=Tjpegimage.Create;
     // si jpeg alors petite transfo oblige pr pouvoir la modif
     if Uppercase(ExtractFileExt(BDImage.FileName))='.JPG' then // extension
     begin
     jpg.LoadFromFile(BDImage.FileName); // charge
     jpg.PixelFormat:=jf24Bit;           // ts aux meme col
     image.Picture.Bitmap.Assign(jpg);  // on transfert a image1
     end;
     // si bmp alors facile !
     if Uppercase(ExtractFileExt(BDImage.FileName))='.BMP' then
     begin
     image.Picture.bitmap.LoadFromFile(BDImage.FileName);
     image.Picture.Bitmap.PixelFormat:=pf24bit;
     end;
     jpg.Free;
     result:=true;
    end;
     
    end;
     
    procedure TForm1.Image1Click(Sender: TObject);
    var
    Scan : TypePRGBArray;
    x,y:integer;
    mv,mb,mr: Integer;
    begin
    if ouvrirImg(BDDI,image1)=true then
    begin
     gauge1.MaxValue:=image1.Picture.Bitmap.Height-1 ;
     n2:=0;
     
    for y:=0 to image1.Picture.Bitmap.Height-1 do
    begin
    gauge1.Progress:=y;
    Scan := image1.picture.Bitmap.ScanLine[Y];
     
    for x:=0 to image1.Picture.Bitmap.Width-1 do
    begin
    // Valeurs en rouge vert et bleu
    mR := Scan[X].Rouge;
    mV := Scan[X].Vert;
    mB := Scan[X].Bleu;
    // Transo en rgb
    PixelsI2[n2]:=rgb(mr,mv,mb);
    inc(n2);
     
    end;
    end;
    end;
    end;
     
    end.

  2. #2
    Membre averti
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2005
    Messages
    218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 218
    Points : 311
    Points
    311
    Par défaut
    Je ne comprends pas très bien où se situe ton problème puisque tu n'utilises ton TopenPicturedialog que pour savoir quel est le fichier que tu veux charger. Si tu connais le fichier que tu veux charger il suffit d'adapter ton code en remplaçant tes BDImage.FileName par le nom du fichier à charger...

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 42
    Points : 18
    Points
    18
    Par défaut
    c'est justement ça le probleme je n'arrive pas a l'adapter par exemple pour que tout ceci s'execute lorsque je clic sur une Timage.

Discussions similaires

  1. [Traitement d'image] Comment faire un texte incrusté
    Par solorac dans le forum Webdesign & Ergonomie
    Réponses: 7
    Dernier message: 22/05/2008, 15h14
  2. [Traitement d'image] Comment "Resizer" une image
    Par sperron dans le forum Webdesign & Ergonomie
    Réponses: 5
    Dernier message: 19/12/2007, 14h37
  3. [Traitement d'image] Comment modifier une image côté serveur ?
    Par pontus21 dans le forum Webdesign & Ergonomie
    Réponses: 7
    Dernier message: 21/08/2006, 12h57
  4. Traitement d'image, comment distinguer des types?
    Par inai dans le forum Traitement du signal
    Réponses: 15
    Dernier message: 07/06/2005, 01h09
  5. Réponses: 5
    Dernier message: 25/12/2004, 23h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo