Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Windows POINT yapısına benzer.
Sözdizimi
class CPoint : public tagPOINT
Üyeler
Ortak Oluşturucular
| Veri Akışı Adı | Açıklama |
|---|---|
CPoint::CPoint |
bir CPointoluşturur. |
Genel Yöntemler
| Veri Akışı Adı | Açıklama |
|---|---|
CPoint::Offset |
ve y üyelerine x CPointdeğer ekler. |
Ortak İşleçler
| Veri Akışı Adı | Açıklama |
|---|---|
CPoint::operator - |
bir ile SIZEdeğerinin CPoint farkını ya da bir öğesinin olumsuzlamasını POINTya da iki POINTs arasındaki farkı ya da CSize bir negatif SIZEile uzaklığı döndürür. |
CPoint::operator != |
İki POINTsn arasındaki eşitsizliği denetler. |
CPoint::operator + |
ve SIZE veya POINTCRect veya uzaklığının CPoint SIZEtoplamını döndürür. |
CPoint::operator += |
veya POINTekleyerek SIZE uzaklıkları gösterirCPoint. |
CPoint::operator -= |
veya POINTçıkararak SIZE uzaklıkları CPoint oluşturur. |
CPoint::operator == |
İki POINTs arasındaki eşitliği denetler. |
Açıklamalar
Ayrıca, işlemeye CPoint ve POINT yapılara yönelik üye işlevlerini de içerir.
Bir CPoint yapı nerede kullanılırsa kullanılsın nesne POINT kullanılabilir. Bu sınıfın bir ile SIZE etkileşim kuran işleçleri nesneleri veya SIZE yapıları kabul CSize eder, çünkü ikisi birbirinin yerine kullanılabilir.
Not
Bu sınıf yapısından tagPOINT türetilir. (AdtagPOINT, yapı için POINT daha az kullanılan bir addır.) Bu, x ve yyapısının veri üyelerinin öğesinin POINT erişilebilir veri üyeleri CPointolduğu anlamına gelir.
Not
Paylaşılan yardımcı program sınıfları (gibi CPoint) hakkında daha fazla bilgi için bkz . Paylaşılan Sınıflar.
Devralma Hiyerarşisi
tagPOINT
CPoint
Gereksinimler
Üstbilgi: atltypes.h
CPoint::CPoint
Bir CPoint nesne oluşturur.
CPoint() throw();
CPoint(int initX, int initY) throw();
CPoint(POINT initPt) throw();
CPoint(SIZE initSize) throw();
CPoint(LPARAM dwPoint) throw();
Parametreler
initX
öğesinin üyesinin x CPointdeğerini belirtir.
initY
öğesinin üyesinin y CPointdeğerini belirtir.
initPt
POINT yapısı veya CPoint başlatmak CPointiçin kullanılan değerleri belirtir.
initSize
SIZE yapısı veya CSize başlatmak CPointiçin kullanılan değerleri belirtir.
dwPoint
Üyeyi x düşük sıralı sözcüğüne dwPoint , üyeyi y ise yüksek sıralı sözcüğüne dwPointayarlar.
Açıklamalar
Bağımsız değişken verilmezse x ve y üyeler 0 olarak ayarlanırsa.
Örnek
CPoint ptTopLeft(0, 0);
// works from a POINT, too
POINT ptHere;
ptHere.x = 35;
ptHere.y = 95;
CPoint ptMFCHere(ptHere);
// works from a SIZE
SIZE sHowBig;
sHowBig.cx = 300;
sHowBig.cy = 10;
CPoint ptMFCBig(sHowBig);
// or from a DWORD
DWORD dwSize;
dwSize = MAKELONG(35, 95);
CPoint ptFromDouble(dwSize);
ASSERT(ptFromDouble == ptMFCHere);
CPoint::Offset
ve y üyelerine x CPointdeğer ekler.
void Offset(int xOffset, int yOffset) throw();
void Offset(POINT point) throw();
void Offset(SIZE size) throw();
Parametreler
xOffset
öğesinin üyesinin uzaklığının x ne kadar olduğunu CPointbelirtir.
yOffset
öğesinin üyesinin uzaklığının y ne kadar olduğunu CPointbelirtir.
point
uzaklığı CPointiçin miktarı (POINT veya CPoint) belirtir.
size
uzaklığı CPointiçin miktarı (SIZE veya CSize) belirtir.
Örnek
CPoint ptStart(100, 100);
ptStart.Offset(35, 35);
CPoint ptResult(135, 135);
ASSERT(ptStart == ptResult);
// works with POINT, too
ptStart = CPoint(100, 100);
POINT pt;
pt.x = 35;
pt.y = 35;
ptStart.Offset(pt);
ASSERT(ptStart == ptResult);
// works with SIZE, too
ptStart = CPoint(100, 100);
SIZE size;
size.cx = 35;
size.cy = 35;
ptStart.Offset(size);
ASSERT(ptStart == ptResult);
CPoint::operator ==
İki POINTs arasındaki eşitliği denetler.
BOOL operator==(POINT point) const throw();
Parametreler
point
Bir POINT yapı veya CPoint nesne içerir.
Dönüş Değeri
Eşitse POINTsıfır olmayan; aksi takdirde 0.
Örnek
CPoint ptFirst(256, 128);
CPoint ptTest(256, 128);
ASSERT(ptFirst == ptTest);
// works with POINTs, too
POINT pt;
pt.x = 256;
pt.y = 128;
ASSERT(ptTest == pt);
// note that pt == ptTest isn't correct!
CPoint::operator !=
İki POINTsn arasındaki eşitsizliği denetler.
BOOL operator!=(POINT point) const throw();
Parametreler
point
Bir POINT yapı veya CPoint nesne içerir.
Dönüş Değeri
Eşit değilse POINTsıfır olmayan; aksi takdirde 0.
Örnek
CPoint ptFirst(256, 128);
CPoint ptTest(111, 333);
ASSERT(ptFirst != ptTest);
// works with POINTs, too
POINT pt;
pt.x = 333;
pt.y = 111;
ASSERT(ptTest != pt);
// note that pt != ptTest isn't correct!
CPoint::operator +=
İlk aşırı yükleme öğesine CPointbir SIZE ekler.
void operator+=(SIZE size) throw();
void operator+=(POINT point) throw();
Parametreler
size
Bir SIZE yapı veya CSize nesne içerir.
point
Bir POINT yapı veya CPoint nesne içerir.
Açıklamalar
İkinci aşırı yükleme, öğesine CPointbir POINT ekler.
Her iki durumda da toplama işlemi, sağ işlenenin x (veya cx) üyesinin üyesine x CPoint eklenerek ve sağ işlenenin (veya cy) üyesinin öğesinin CPointüyesine y eklenerek y yapılır.
Örneğin, içeren CPoint(30, 40) bir değişkene eklemeCPoint(5, -7), değişkenini olarak CPoint(35, 33)değiştirir.
Örnek
CPoint ptStart(100, 100);
CSize szOffset(35, 35);
ptStart += szOffset;
CPoint ptResult(135, 135);
ASSERT(ptResult == ptStart);
// also works on SIZE
ptStart = CPoint(100, 100);
SIZE sz;
sz.cx = 35;
sz.cy = 35;
ptStart += sz;
ASSERT(ptResult == ptStart);
CPoint::operator -=
İlk aşırı yükleme bir SIZE öğesini içinden CPointçıkarır.
void operator-=(SIZE size) throw();
void operator-=(POINT point) throw();
Parametreler
size
Bir SIZE yapı veya CSize nesne içerir.
point
Bir POINT yapı veya CPoint nesne içerir.
Açıklamalar
İkinci aşırı yükleme bir POINT öğesini içinden CPointçıkarır.
Her iki durumda da çıkarma işlemi, sağ işlenenin (veya cx) üyesinin öğesinden x CPoint çıkarılarak ve sağ işlenenin (veya cy) üyesinin öğesinden y CPointçıkarılarak y yapılır.x
Örneğin, içeren CPoint(30, 40) bir değişkenden çıkarmaCPoint(5, -7), değişkenini olarak CPoint(25, 47)değiştirir.
Örnek
CPoint ptStart(100, 100);
CSize szOffset(35, 35);
ptStart -= szOffset;
CPoint ptResult(65, 65);
ASSERT(ptResult == ptStart);
// also works on SIZE
ptStart = CPoint(100, 100);
SIZE sz;
sz.cx = 35;
sz.cy = 35;
ptStart -= sz;
ASSERT(ptResult == ptStart);
CPoint::operator +
Bir veya nesnesine göre kaydırmak CPoint veya CSize bir CPoint ile kaydırmak CPointCRect için bu işleci kullanın.
CPoint operator+(SIZE size) const throw();
CPoint operator+(POINT point) const throw();
CRect operator+(const RECT* lpRect) const throw();
Parametreler
size
Bir SIZE yapı veya CSize nesne içerir.
point
Bir POINT yapı veya CPoint nesne içerir.
lpRect
Bir yapı veya CRect nesnenin işaretçisini RECT içerir.
Dönüş Değeri
bir CPoint ile SIZEuzaklık olan, CPoint bir ile uzaklık POINTCRect olan veya bir ile uzaklık olan bir POINT.
Açıklamalar
Örneğin, noktayı bir noktaya CPoint(25, -19) CPoint(15, 5) veya boyuta CSize(15, 5) göre kaydırmak için ilk iki aşırı yüklemeden birini kullanmak değerini CPoint(40, -14)döndürür.
öğesine POINT ekleme CRect işlemi, CRect içinde belirtilen ve y değerlerine göre x uzaklığından sonra değerini POINTdöndürür. Örneğin, dikdörtgeni bir CRect(125, 219, 325, 419) noktaya CPoint(25, -19) göre kaydırmak için son aşırı yüklemeyi kullanmak döndürür CRect(150, 200, 350, 400).
Örnek
CPoint ptStart(100, 100);
CSize szOffset(35, 35);
CPoint ptEnd;
ptEnd = ptStart + szOffset;
CPoint ptResult(135, 135);
ASSERT(ptResult == ptEnd);
// also works on SIZE
ptStart = CPoint(100, 100);
SIZE sz;
sz.cx = 35;
sz.cy = 35;
ptEnd = ptStart + sz;
ASSERT(ptResult == ptEnd);
CPoint::operator -
veya CSize nesnesini öğesinden çıkarmak CPoint için ilk iki aşırı yüklemeden CPointbirini kullanın.
CSize operator-(POINT point) const throw();
CPoint operator-(SIZE size) const throw();
CRect operator-(const RECT* lpRect) const throw();
CPoint operator-() const throw();
Parametreler
point
Bir POINT yapı veya CPoint nesne.
size
Bir SIZE yapı veya CSize nesne.
lpRect
Bir yapıya veya nesneye RECT işaretçi CRect .
Dönüş Değeri
CSize İki POINTs arasındaki fark olan, bir CPoint öğesinin olumsuzlanmasıyla SIZEuzaklığı olan, CRect bir öğesinin olumsuzlaması ile uzaklığı olan veya POINTCPoint bir öğesinin olumsuzlaması olan bir POINTdeğeridir.
Açıklamalar
Üçüncü aşırı yükleme, ' CRect yi olumsuzlama ile kaydırıyor CPoint. Son olarak, birli işlecini kullanarak öğesini olumsuz yazın CPoint.
Örneğin, iki nokta CPoint(25, -19) CPoint(15, 5) arasındaki farkı bulmak için ilk aşırı yüklemeyi kullanarak döndürür CSize(10, -24).
'den çıkarma CSize işlemi yukarıdakiyle aynı hesaplamayı yapar ancak nesne değil CSize nesne döndürürCPoint.CPoint Örneğin, nokta CPoint(25, -19) ile boyut CSize(15, 5) arasındaki farkı bulmak için ikinci aşırı yüklemeyi kullanmak döndürür CPoint(10, -24).
Bir dikdörtgenin bir içinden POINT çıkarılması, içinde belirtilen POINTve y değerlerinin x negatiflerine göre dikdörtgen uzaklığını döndürür. Örneğin, dikdörtgeni CRect(125, 200, 325, 400) noktaya CPoint(25, -19) göre kaydırmak için son aşırı yüklemeyi kullanmak döndürür CRect(100, 219, 300, 419).
Bir birli işlecini kullanarak bir POINTöğesini olumsuz kullanın. Örneğin, nokta CPoint(25, -19) ile birli işlecini kullanmak döndürür CPoint(-25, 19).
Örnek
// example for CPoint subtraction
CPoint ptStart(100, 100);
CSize szOffset(35, 35);
CPoint ptEnd;
ptEnd = ptStart - szOffset;
CPoint ptResult(65, 65);
ASSERT(ptResult == ptEnd);
// also works on SIZE
ptStart = CPoint(100, 100);
SIZE sz;
sz.cx = 35;
sz.cy = 35;
ptEnd = ptStart - sz;
ASSERT(ptResult == ptEnd);
// example for CPoint unary operator
CPoint pt(35, 35);
pt = -pt;
CPoint ptNeg(-35, -35);
ASSERT(pt == ptNeg);
Ayrıca bkz.
MFC Örnek MDI
Hiyerarşi Grafiği
POINT Yapı
CRect Sınıf
CSize Sınıf