AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi inkompatible typen TBitmap TImage
Thema durchsuchen
Ansicht
Themen-Optionen

inkompatible typen TBitmap TImage

Ein Thema von JCooper · begonnen am 25. Nov 2004 · letzter Beitrag vom 25. Nov 2004
Antwort Antwort
Seite 1 von 2  1 2      
JCooper

Registriert seit: 26. Sep 2004
15 Beiträge
 
#1

inkompatible typen TBitmap TImage

  Alt 25. Nov 2004, 21:56
Hi,

was mache ich falsch???



Code:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls;

type
  TForm1 = class(TForm)
    Bit: TImage;
    Beenden: TButton;
    Button1: TButton;
    procedure MakeRed(Bit: TBitmap);
    procedure BeendenClick(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;


implementation

{$R *.dfm}

procedure TForm1.MakeRed(Bit: TBitmap);
type
  PixArray = Array [1..3] of Byte;
var
  p: ^PixArray;
  h,w: Integer;
begin
  For h:=0 to Bit.Height-1 do
  begin
    p:= Bit.ScanLine[h];
    For w:=0 to Bit.Width-1 do
    begin
      p^[3]:=255;
      Inc(p);
    end;
  end;
end;

procedure TForm1.BeendenClick(Sender: TObject);
begin
close;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  MakeRed(Bit: TBitmap);
end;

end.
Fehlermeldung :

Inkompatible typen: 'TBitmap' 'TImage'




Bin Delphi Anfänger, also seid gnädig )


grüße
  Mit Zitat antworten Zitat
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#2

Re: inkompatible typen TBitmap TImage

  Alt 25. Nov 2004, 22:00
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  MakeRed(Bit.Picture.Bitmap);
end;
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
  Mit Zitat antworten Zitat
Benutzerbild von nailor
nailor

Registriert seit: 12. Dez 2002
Ort: Karlsruhe
1.989 Beiträge
 
#3

Re: inkompatible typen TBitmap TImage

  Alt 25. Nov 2004, 22:00
ein typecast geht so: NeuerTyp(altesDingen)
Michael N.
http://nailor.devzero.de/code/sharpmath/testing/ --- Tests, Feedback, Anregungen, ... aller Art sehr willkommen!
::: don't try so hard - it'll happen for a reason :::
  Mit Zitat antworten Zitat
JCooper

Registriert seit: 26. Sep 2004
15 Beiträge
 
#4

Re: inkompatible typen TBitmap TImage

  Alt 25. Nov 2004, 22:04
schöenen dank,...

die Fehlermeldung ist weg,...

nur...

die Pixel werden nicht rot eingefärbt, sprich, die procedure wird nich ausgeführt...




  Mit Zitat antworten Zitat
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#5

Re: inkompatible typen TBitmap TImage

  Alt 25. Nov 2004, 22:10
probier mal folgendes:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  bit.picture.bitmap := Tbitmap.create;
  MakeRed(Bit.Picture.Bitmap);
end;
weis net obs daran liegt das das bitmap nochnicht existiert o.ä.
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
  Mit Zitat antworten Zitat
JCooper

Registriert seit: 26. Sep 2004
15 Beiträge
 
#6

Re: inkompatible typen TBitmap TImage

  Alt 25. Nov 2004, 22:12
hm,... ich hab das bild vorher in die Form geladen...

jetz verschwindet es beim klick auf den Button

  Mit Zitat antworten Zitat
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#7

Re: inkompatible typen TBitmap TImage

  Alt 25. Nov 2004, 22:15
jo weil du es damit überschreibst mit einem neuen image..
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  bit.picture.bitmap := Tbitmap.create;
  bit.picture.bitmap.loadfromfile(filename und pfad der bmp datei);
  MakeRed(Bit.Picture.Bitmap);
end;
wenn es so weiter geht muss ichs selber mal testen *g*
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
  Mit Zitat antworten Zitat
JCooper

Registriert seit: 26. Sep 2004
15 Beiträge
 
#8

Re: inkompatible typen TBitmap TImage

  Alt 25. Nov 2004, 22:24
Vielen vielen dank,

es funktioniert




grüße
  Mit Zitat antworten Zitat
JCooper

Registriert seit: 26. Sep 2004
15 Beiträge
 
#9

Re: inkompatible typen TBitmap TImage

  Alt 25. Nov 2004, 22:32
wie bekomme ich es jetzt hin, dass ich über 3 radio buttons betimme, welchen der 3 Array werte ich ändern möchte... (Rot, Grün, Blau)

z.Zt ist es ja festgelegt auf 3

Code:
p^[3]:=255;

danke für die mühe

  Mit Zitat antworten Zitat
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#10

Re: inkompatible typen TBitmap TImage

  Alt 25. Nov 2004, 22:38
einfacher gehts mit der combobox als ItemList eingestellt
da kann man dann nach dem index die farbe setzen

Delphi-Quellcode:
var
farbe: integer;

als combobox:

farbe := combobox1.itemindex; // 0 ist das erste item
 p^[farbe+1]:=255;

oder als radio button:

if RadioButton1.checked then farbe := 1;
if RadioButton2.checked then farbe := 2;
if RadioButton3.checked then farbe := 3;

 p^[farbe]:=255;
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:27 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz