Documentation composant par D.Glodt (c)2000-2001 |
Appendix A: QCanvasEx |
|
QCanvasEx Composant
QCanvasEx est un controle identique a Qcanvas avec ajout de dessin d'icones
et de fonctionnalités avec le presse papier.
QCanvasEx Proprietés
QCanvasEx Methodes
Methode |
Type |
Description |
Parametres |
DrawIco |
SUB(left%,top%,handle%) |
Dessine un icone |
3 |
CopyToClipboard |
SUB(rect as QRECT) |
Copie l'image dans le presse papier |
1 |
PasteFromClipboard |
SUB(x%,y%) |
Colle l'image du presse papier |
2 |
GetWidthClipboard |
FUNCTION as INTEGER |
Retourne la largeur image du presse papier |
0 |
GetHeightClipboard |
FUNCTION as INTEGER |
Retourne la hauteur image du presse papier |
0 |
QCanvasEx Evenements
Evenement |
Type |
Déclenchement |
Parametres |
OnClipboard |
(Present as boolean) |
Etat de présence image dans le presse papier |
1 |
QCanvasEx Exemples
Voir exemple du composant QICON
$typecheck on
$INCLUDE "Rapidq.inc"
$INCLUDE "Object\QCanvasEx.inc"
declare sub OuvrirClick
declare sub FermerClick
declare sub QuitterClick
declare sub Copier
declare sub Coller
declare sub Present(flag as integer)
const title="Viewer picture"
dim bitmap as QBITMAP
dim source as QRECT
CREATE Form AS QFORM
Caption =title
Width = 600
Height = 600
Center
CREATE Menu AS QMAINMENU
CREATE item1 AS QMENUITEM
Caption="&Fichier"
CREATE item2 AS QMENUITEM
Caption="&Ouvrir"
OnClick=OuvrirClick
END CREATE
CREATE item4 AS QMENUITEM
Caption="&Fermer"
OnClick=FermerClick
END CREATE
CREATE item5 AS QMENUITEM
Caption="-"
END CREATE
CREATE item6 AS QMENUITEM
Caption="&Quitter"
OnClick=QuitterClick
END CREATE
END CREATE
CREATE item11 as QMENUITEM
Caption="&Edition"
CREATE item12 as QMENUITEM
Caption="&Copier"
OnClick=Copier
END CREATE
CREATE item13 as QMENUITEM
Caption="&Coller"
OnClick=Coller
Enabled=false
END CREATE
END CREATE
END CREATE
CREATE ScrollBox1 AS QSCROLLBOX
AutoScroll = 1
Align=5
Color = &HFFFFFF
CREATE image AS QCanvasEx
width=1000
height=1000
OnClipboard=Present
END CREATE
END CREATE
END CREATE
bitmap.PixelFormat=6
Form.ShowModal
sub OuvrirClick
dim file as QOPENDIALOG
file.Filter="Fichiers bitmap(*.bmp)|*.bmp"
file.InitialDir=CurDir$
if file.Execute then
bitmap.Bmp=file.FileName
image.draw(0,0,bitmap.bmp)
Form.Caption=title+"-"+file.FileName
end if
end sub
sub FermerClick
image.repaint
Form.Caption=title
end sub
sub QuitterClick
Form.Close
end sub
sub Copier
source.left=0
source.top=0
source.right=bitmap.width
source.bottom=bitmap.height
image.copyToClipboard(source)
end sub
sub coller
image.pasteFromClipboard(20,20)
form.caption=str$(image.GetWidthClipboard)+"*"+str$(image.GetHeightClipboard)
end sub
Sub Present(flag as integer)
item13.enabled=flag
End Sub