Deutsch
Forum

Erledigt: Einfügen

 
- Seite 1 -



Roberto
Neu
Ich möchte über ein Trackmenu die Funktion "EINFÜGEN" machen das Trackmenu habe ich schon erstellt aber ich finde den Befehl für EINFÜGEN nicht
 
04.07.2009  
 



 
- Seite 1 -



Nico
Madysa
Das mit den Koordinaten ist doch ganz einfach.
Bei allen BMP-Befehlen gibst du die Koordinaten an, die du haben willst.
LoadSizedBMP "Test.bmp", X,Y - DX,DY ; 0

X und Y geben die Koordinaten der oberen linken Ecke des Bildes an. 0,0 wäre die obere linke Ecke deines Fensters.
DX und DY stehen für die Breite des Bildes. Soll das Bild also das gesamte Fenster einnehmen, dann ist dies hier dein Freund:
LoadSizedBMP "Test.bmp", 0,0 - width(%hWnd),height(%hWnd) ; 0
 
Nico Madysa
04.07.2009  
 




Roberto
Neu
Kopiere mal bitte mein Code und mache einen Screenshot.
Dann geh in mein Programm mache einen Rechtsklick auf die Bildfläche und dann auf einfügen klicken.
Des fügt den Screen immer komisch ein
 
05.07.2009  
 




Nico
Madysa
Argh! Verzeih mir, doch jetzt haben wir beide das Prädikat "Flitzbiepe" verdient.
Der Befehl heißt ClipLoadBMP -- nichtClipLoadSizedBMP, diesen gibt es nämlich nicht. Daher ist es auch nicht verwunderlich, dass er das Bild in Originalgröße ausgibt. ClipLoadBMP hat nur 3 Parameter, während du 5 angegeben hast. Willst du das Bild aus der Zwischenablage verzerren, dann musst du einen Umweg nehmen.

1. Weg: Über die Speicherbitmap
KompilierenMarkierenSeparieren
2. Weg: Über das Handle eines Bildes
KompilierenMarkierenSeparieren
 
Nico Madysa
05.07.2009  
 




Roberto
Neu
Und wie soll ich das jetzt in den Code bekommen??
Bei mir steht immer
Befehl Startpaint unbekannt
 
05.07.2009  
 




Nico
Madysa
Jaa, ich hab mich verschrieben.
Der Befehl heißt StartPaint, nicht StarPaint.
Ich habe den Quelltext korrigiert, wenn du ihn an ClipLoadBMPs Stelle setzt, sollte es funktionieren.

Aber bitte nicht nur kopieren, sondern auch verstehen.
 
Nico Madysa
05.07.2009  
 




Roberto
Neu
Guck dir das mal an da kommt was ganz komisches raus
KompilierenMarkierenSeparieren
declare Name$, text$, titeltext$, text2$, titeltext2$, ende%
WindowTitle "BMPviewer 2 Chrome"
Window 50,20 - 800,600
CreateMenu 100,20
UsePen 0,2,RGB(192,192,192)
RecTangle 200,91 - 600,500
AppendMenu 100,"&Bild Laden"
AppendMenu 101,"&by Roberto Neu"
AppendMenu 102,"&Screenshot"
AppendMenu 103,"&Speichern unter"
AppendMenu 104,"&Beenden"
TrackMenu 672,92

if %MouseKey = 2

    CreateMenu
    AppendMenu 1,"Einfügen"
    TrackMenu %MouseX,%MouseY
    Case MenuItem(1) : ClipLoadBMP 201,92-397,400;1
    Du erzeugst die Speicherbitmap in der Größe des Bildschirmfotos
    MCls %MaxX,%MaxY,RGB(255,255,255)
    Du wechselst in die Speicherbitmap
    StartPaint -1
    Und zeichnest in diese das Bild aus der Zwischenablage
    ClipLoadBMP 0,0 ; 0
    Dann wechselst du wieder auf dein Hauptfenster
    EndPaint
    Dann holst du das Bild aus der Zwischenablage
    %BMPX und %BMPY sind Breite und Höhe des letzten gezeichneten Bildes
    Nach dem Pfeil kommen die Koordinaten, an die du das Bild setzen willst
    MCopySizedBMP 0,0 - %BMPX,%BMPY > 201,92-160,120 ; 0

endif

Case @MenuItem(100): Name$ = @LoadFile$("Bilddateien","*.BMP")

While Name$ <> ""

    LoadSizedBMP Name$,201,92-397,400;0
    WindowTitle "BMPviewer 2 Chrome - [" + Name$ + "]"
    WaitMouse
    Name$ = @LoadFile$("Bilddateien","*.BMP")

Wend

Case @MenuItem(101) :
Text$ = "BMPviewer 1.0 by Roberto Neu"
Titeltext$ = "Roberto Neu"
Messagebox(Text$,Titeltext$,0)
Case @Menuitem(102) :
Text2$ = "Wenn sie einen Screenshot machen möchten.
Klicken sie auf die Taste PrtSc/Druck.
Gehen sie dan wieder in dieses Programm
Machen sie einen rechtsklick/Einfügen"
Titeltext2$ = "Screenshot"
Messagebox(Text2$,Titeltext2$,0)
Case @MenuItem(103) : SaveBmp "Bild1.BMP",10,10 - 200,140
waitkey
end
End
 
05.07.2009  
 



 
- Seite 2 -



Nico
Madysa
Nochmals: Diese Zeile
KompilierenMarkierenSeparieren
Case MenuItem(1) : ClipLoadBMP 201,92-397,400;1

Ist purer Blödsinn. Erstens hat ClipLoadBMP nur drei Parameter (also heißt es im besten Falle
ClipLoadBMP 201,92;1), zweitens gibst du das Bild in deinem Code zweimal aus. Einmal in deinem ClipLoadBMP und einmal auf meine Art und Weise. Deswegen der Rat, auch zu verstehen, was du da hineinkopiert hast.
 
Nico Madysa
05.07.2009  
 




Roberto
Neu
Aber wenn man das so schreibt

ClipLoadBMP 201,92;1)

Kann man nur angeben wo das Bild sein soll und nicht wie groß es sein soll
 
06.07.2009  
 




Jörg
Sellmeyer
Welche Profanversion nutzt Du denn?
Wenn Du XProfanFree benutzt, sieh Dir mal @Create("hPic",N,S)

"&CLPBMP" - Es wird eine Bitmapkopie der aktuellen Zwischenablage erstellt, wenn diese eine Bitmap enthält.

an.
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
07.07.2009  
 




Thomas
Freier
Jörg:  [...] 


Roberto Neu
Guten Tag
Ich habe mir letzte Woche XProfan 10 free runtergeladen und dann ein bisschen herumexperimentiert.


Und iF hatte so gut mit ihm angefangen. Naja....
 
Gruß Thomas
Windows XP SP2, XProfan X2
07.07.2009  
 



Ich zumindest verliere Interesse gerne dann, wenn ich glaube, dass irgendwas faul ist.

Hierbei ist einzig mein Gefühl ausschlaggebend - bitte nicht überbewerten.
 
07.07.2009  
 




Nico
Madysa
Roberto Neu, Beitrag=53115, Zeitpunkt=06.07.2009
Aber wenn man das so schreibt

ClipLoadBMP 201,92;1)

Kann man nur angeben wo das Bild sein soll und nicht wie groß es sein soll


Das versuche ich dir zu sagen.

Deswegen habe ich dir den Umweg über die Speicherbitmap vorgeschlagen. Da du den Inhalt der Zwischenablage nur in Originalgröße zeichnen kannst, musst du ihn in Originalgröße in die Speicherbitmap zeichnen. Von dort aus kannst du dann das Bild kopieren und währenddessen verzerren, wie du willst.
 
Nico Madysa
07.07.2009  
 




Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

2.810 Betrachtungen

Unbenanntvor 0 min.

Themeninformationen



Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie