komponente ohne ausgabe zeichnen
-
- Beiträge: 308
- Registriert: Do 9. Apr 2009, 10:10
- OS, Lazarus, FPC: Ubuntu 9.10 (L 0.9.28 FPC 2.2.4)
- CPU-Target: 32Bit
- Wohnort: 785..
komponente ohne ausgabe zeichnen
Ich versuche eine Form in ein TBitmap zu zeichnen ohne dass eine Ausgabe auf dem Bildschirm stattfindet. Hat jemand ne Idee wie das geht/gehen könnte? (am besten noch etwas was unter win und linux funktioniert)
Ich habs bisher über Handles versucht bin aber neu auf dem Gebiet und hatte keinen Erfolg damit. Man trifft bei GTK2 leider auch oft auf funktionen mit inhalt: Result:=0.
Ich habs bisher über Handles versucht bin aber neu auf dem Gebiet und hatte keinen Erfolg damit. Man trifft bei GTK2 leider auch oft auf funktionen mit inhalt: Result:=0.
Ubuntu 9.10 (L 0.9.28 FPC 2.4.x)
-
- Beiträge: 359
- Registriert: Mi 27. Mai 2009, 20:54
- OS, Lazarus, FPC: OpenSuse11.4 x86 (Lazarus: 0.9.30 FPC 2.4.2)
- CPU-Target: x86
- Wohnort: Cottbus
Re: komponente ohne ausgabe zeichnen
Meinst du dass du ein Formular (ein Fenster) auf ein TBitmap zeichnen willst oder willst du eigene Formen (Dreiecke oder so) darauf Zeichnen...
-
- Beiträge: 308
- Registriert: Do 9. Apr 2009, 10:10
- OS, Lazarus, FPC: Ubuntu 9.10 (L 0.9.28 FPC 2.2.4)
- CPU-Target: 32Bit
- Wohnort: 785..
Re: komponente ohne ausgabe zeichnen
Form im oberen Beitrag soll ein Formular sein. Versteht sich mit allem was so drauf ist. Falls ein Panel oder WinControl sich besser eigenet wärs auch ok
Ubuntu 9.10 (L 0.9.28 FPC 2.4.x)
Re: komponente ohne ausgabe zeichnen
Code: Alles auswählen
procedure tform1.taskskreenshot1;
var abm: tbitmap;
begin
abm := form2.getformimage;
abm.savetofile('test.bmp');
abm.free;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
self.hide;
form2.show;
application.processmessages;
taskskreenshot1;
self.show;
image1.picture.loadfromfile('test.bmp');
end;
macht das hier n´ Screenshot von Form2
Danke schonmal für eure Antworten
it´s not a bug, it´s a feature!
it´s not a bug, it´s a feature!
-
- Beiträge: 308
- Registriert: Do 9. Apr 2009, 10:10
- OS, Lazarus, FPC: Ubuntu 9.10 (L 0.9.28 FPC 2.2.4)
- CPU-Target: 32Bit
- Wohnort: 785..
Re: komponente ohne ausgabe zeichnen
u-boot hat geschrieben:Ich versuche eine Form in ein TBitmap zu zeichnen ohne dass eine Ausgabe auf dem Bildschirm stattfindet. Hat jemand ne Idee wie das geht/gehen könnte? (am besten noch etwas was unter win und linux funktioniert)
Ich habs bisher über Handles versucht bin aber neu auf dem Gebiet und hatte keinen Erfolg damit. Man trifft bei GTK2 leider auch oft auf funktionen mit inhalt: Result:=0.
Ubuntu 9.10 (L 0.9.28 FPC 2.4.x)
Re: komponente ohne ausgabe zeichnen
Ich glaube nicht, dass das geht (jedenfalls kaum unter Linux).
Warum willst du das denn? Vllt. gibt es andere Lösungen für dein Vorhaben.
Warum willst du das denn? Vllt. gibt es andere Lösungen für dein Vorhaben.
-
- Beiträge: 308
- Registriert: Do 9. Apr 2009, 10:10
- OS, Lazarus, FPC: Ubuntu 9.10 (L 0.9.28 FPC 2.2.4)
- CPU-Target: 32Bit
- Wohnort: 785..
Re: komponente ohne ausgabe zeichnen
Ich wollte ner Komponente so ne art (Pseudo-)Transparenz verpassen.
Ubuntu 9.10 (L 0.9.28 FPC 2.4.x)
-
- Lazarusforum e. V.
- Beiträge: 7192
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
Re: komponente ohne ausgabe zeichnen
Unter KDE4 kann man über eine Anweisung Alpha-Transparent Aktivieren. Ich bin mir nicht mehr so sicher, ob das auch unter KDE3 klappt. Die meisten Komponenten sollten eine Pseude Transparent haben. Du meinst sowas wie beim Label bzw. beim TImage ? Vielleicht reicht es schon aus, die Hintergrund Farbe auf das Parent Control zu stellen. Vielleicht hat die Komponente aber auch einen Canvas und somit könntest du mit Canvas.brush.Style:=bsClear das erreichen. Redest du hier vom Shape ? Da sollt es auf jedenfall gehen, weil du dort direkten Zugriff auf Brush hast.
MFG
Michael Springwald
Michael Springwald
-
- Beiträge: 308
- Registriert: Do 9. Apr 2009, 10:10
- OS, Lazarus, FPC: Ubuntu 9.10 (L 0.9.28 FPC 2.2.4)
- CPU-Target: 32Bit
- Wohnort: 785..
Re: komponente ohne ausgabe zeichnen
nein ich rede von einer eigenen Komponente die von TCustomControl abgeleitet ist ... ist somit also ein TWinControl.
ich wollte das was unter dem Control ist nochmals aufs Wincontrol zeichnen.
ich wollte das was unter dem Control ist nochmals aufs Wincontrol zeichnen.
Zuletzt geändert von u-boot am So 14. Mär 2010, 01:13, insgesamt 1-mal geändert.
Ubuntu 9.10 (L 0.9.28 FPC 2.4.x)
-
- Lazarusforum e. V.
- Beiträge: 7192
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
Re: komponente ohne ausgabe zeichnen
Die Ein-zigste Lösung die mir noch einfällt ist folgende: Du nimmst den Vorschlag von "felix96", damit hast du schon mal ein Bild, jetzt musst du "nur" noch den Bereich mit bitbtl oder copyRect(von Canvas) Kopieren, in deine Komponenten. Es ist jedoch recht "Zeitaufwendig"...
MFG
Michael Springwald
Michael Springwald
-
- Beiträge: 308
- Registriert: Do 9. Apr 2009, 10:10
- OS, Lazarus, FPC: Ubuntu 9.10 (L 0.9.28 FPC 2.2.4)
- CPU-Target: 32Bit
- Wohnort: 785..
Re: komponente ohne ausgabe zeichnen
nicht nur langsam.... es geht auch nicht weil ein 'invalidate ' während der paint-procedure vorkommt....
Ubuntu 9.10 (L 0.9.28 FPC 2.4.x)