CLinkCtrl Sınıfı
Windows ortak SysLink denetiminin işlevselliğini sağlar.
Sözdizimi
class CLinkCtrl : public CWnd
Üyeler
Ortak Oluşturucular
Veri Akışı Adı | Açıklama |
---|---|
CLinkCtrl::CLinkCtrl | Bir CLinkCtrl nesne oluşturur. |
Genel Yöntemler
Veri Akışı Adı | Açıklama |
---|---|
CLinkCtrl::Create | Bir bağlantı denetimi oluşturur ve bunu bir CLinkCtrl nesneye ekler. |
CLinkCtrl::CreateEx | Genişletilmiş stiller içeren bir bağlantı denetimi oluşturur ve bunu bir CLinkCtrl nesneye ekler. |
CLinkCtrl::GetIdealHeight | Bağlantı denetiminin ideal yüksekliğini alır. |
CLinkCtrl::GetIdealSize | Bağlantının belirtilen genişliğine bağlı olarak geçerli bağlantı denetimi için bağlantı metninin tercih edilen yüksekliğini hesaplar. |
CLinkCtrl::GetItem | Bağlantı denetim öğesinin durumlarını ve özniteliklerini alır. |
CLinkCtrl::GetItemID | Bağlantı denetim öğesinin kimliğini alır. |
CLinkCtrl::GetItemState | Bağlantı denetim öğesinin durumunu alır. |
CLinkCtrl::GetItemUrl | Bağlantı denetim öğesi tarafından temsil edilen URL'yi alır. |
CLinkCtrl::HitTest | Kullanıcının belirtilen bağlantıya tıklayıp tıklamadığını belirler. |
CLinkCtrl::SetItem | Bağlantı denetim öğesinin durumlarını ve özniteliklerini ayarlar. |
CLinkCtrl::SetItemID | Bağlantı denetim öğesinin kimliğini ayarlar. |
CLinkCtrl::SetItemState | Bağlantı denetim öğesinin durumunu ayarlar. |
CLinkCtrl::SetItemUrl | Bağlantı denetim öğesi tarafından temsil edilen URL'yi ayarlar. |
Açıklamalar
"Bağlantı denetimi" bir pencereye köprü metni bağlantıları eklemek için kullanışlı bir yol sağlar. Gerçek denetim, işaretlenmiş metinleri işleyen ve kullanıcı eklenmiş bir bağlantıya tıkladığında uygun uygulamaları başlatan bir penceredir. Tek bir denetimde birden çok bağlantı desteklenir ve sıfır tabanlı bir dizin tarafından erişilebilir.
Bu denetim (ve bu nedenle CLinkCtrl
sınıfı) yalnızca Windows XP ve sonraki sürümlerde çalışan programlarda kullanılabilir.
Daha fazla bilgi için bkz . Windows SDK'sında SysLink Denetimi .
Devralma Hiyerarşisi
CLinkCtrl
Gereksinimler
Üst bilgi: afxcmn.h
CLinkCtrl::CLinkCtrl
Bir CLinkCtrl
nesne oluşturur.
CLinkCtrl();
CLinkCtrl::Create
Bir bağlantı denetimi oluşturur ve bunu bir CLinkCtrl
nesneye ekler.
virtual BOOL Create(
LPCTSTR lpszLinkMarkup,
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
virtual BOOL Create(DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Parametreler
lpszLinkMarkup
Görüntülenecek işaretlenmiş metni içeren sıfır sonlandırılan bir dizenin işaretçisi. Daha fazla bilgi için SysLink Denetimlerine Genel Bakış konusunun "İşaretle ve Bağlantı Erişimi" bölümüne bakın.
dwStyle
Bağlantı denetiminin stilini belirtir. Denetim stillerinin herhangi bir bileşimini uygulayın. Daha fazla bilgi için bkzWindows SDK
. Ortak Denetim Stilleri.
Rect
Bağlantı denetiminin boyutunu ve konumunu belirtir. Bir CRect nesnesi veya RECT yapısı olabilir.
pParentWnd
Bağlantı denetiminin üst penceresini belirtir. NULL olmamalıdır.
Nıd
Bağlantı denetiminin kimliğini belirtir.
Dönüş Değeri
Başlatma başarılı olursa TRUE; aksi takdirde YANLIŞ.
Açıklamalar
İki adımda bir CLinkCtrl
nesne oluşturursunuz. İlk olarak oluşturucuyu çağırın ve ardından bağlantı denetimini oluşturan ve nesnesine ekleyen öğesini çağırınCreate
CLinkCtrl
. Denetiminizle genişletilmiş windows stilleri kullanmak istiyorsanız, yerine CLinkCtrl::CreateEx'i çağırın.Create
Yöntemin Create
ikinci biçimi kullanım dışıdır. lpszLinkMarkup parametresini belirten ilk formu kullanın.
Örnek
İlk kod örneği, iki bağlantı denetimine erişmek için kullanılan ve m_Link2
adlı m_Link1
iki değişkeni tanımlar.
afx_msg void OnNMClickSyslink1(NMHDR *pNMHDR, LRESULT *pResult);
afx_msg void OnNMClickSyslink2(NMHDR *pNMHDR, LRESULT *pResult);
// Link variable associated with resource editor CLinkCtrl control.
CLinkCtrl m_Link1;
// Link variable associated with programmatic CLinkCtrl control.
CLinkCtrl m_Link2;
Sonraki kod örneği, başka bir bağlantı denetiminin konumunu temel alan bir bağlantı denetimi oluşturur. Kaynak yükleyici, uygulamanız başlatıldığında ilk bağlantı denetimini oluşturur. Uygulamanız OnInitDialog yöntemine girdiğinde, ilk bağlantı denetiminin konumuna göre ikinci bağlantı denetimini oluşturursunuz. Ardından ikinci bağlantı denetimini, görüntülenen metne sığacak şekilde yeniden boyutlandırabilirsiniz.
CRect rect1, rect2;
int height = 0;
SIZE sz = {0};
PTCHAR url =
_T("Link 2) ")
_T("<A HREF=\"https://visualstudio.microsoft.com\">")
_T("Microsoft VC++ Home")
_T("</A>");
m_Link1.GetWindowRect(&rect1);
m_Link2.Create(url,
(WS_VISIBLE | WS_TABSTOP | WS_CHILD | WS_BORDER),
CRect(
rect1.left, rect1.bottom + rect1.Height(),
rect1.right, rect1.bottom + (2 * rect1.Height())),
this,
IDC_SYSLINK2);
m_Link2.GetClientRect(&rect2);
// The return value of GetIdealSize() is the same as sz.cy
height = m_Link2.GetIdealSize(
rect2.Width(), &sz);
if ((sz.cx != 0) && (sz.cy != 0))
{
int rc = m_Link2.SetWindowPos(
this,
0, 0, sz.cx, sz.cy,
(SWP_NOMOVE | SWP_NOZORDER | SWP_NOREPOSITION | SWP_NOACTIVATE));
}
CLinkCtrl::CreateEx
Genişletilmiş stiller içeren bir bağlantı denetimi oluşturur ve bunu bir CLinkCtrl
nesneye ekler.
virtual BOOL CreateEx(
LPCTSTR lpszLinkMarkup,
DWORD dwExStyle,
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
virtual BOOL CreateEx(DWORD dwExStyle,
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Parametreler
lpszLinkMarkup
Görüntülenecek işaretlenmiş metni içeren sıfır sonlandırılan bir dizenin işaretçisi. Daha fazla bilgi için SysLink Denetimlerine Genel Bakış konusunun "İşaretle ve Bağlantı Erişimi" bölümüne bakın.
dwExStyle
Bağlantı denetiminin genişletilmiş stilini belirtir. Genişletilmiş Windows stillerinin listesi için Windows SDK'sında CreateWindowEx için dwExStyle parametresine bakın.
dwStyle
Bağlantı denetiminin stilini belirtir. Denetim stillerinin herhangi bir bileşimini uygulayın. Daha fazla bilgi için bkz . Windows SDK'sında Ortak Denetim Stilleri .
Rect
Bağlantı denetiminin boyutunu ve konumunu belirtir. Bir CRect nesnesi veya RECT yapısı olabilir.
pParentWnd
Bağlantı denetiminin üst penceresini belirtir. NULL olmamalıdır.
Nıd
Bağlantı denetiminin kimliğini belirtir.
Dönüş Değeri
Başlatma başarılı olursa TRUE; aksi takdirde YANLIŞ.
Açıklamalar
Genişletilmiş Windows stili sabitleri uygulamak için Oluştur yerine kullanınCreateEx
.
Yöntemin CreateEx
ikinci biçimi kullanım dışıdır. lpszLinkMarkup parametresini belirten ilk formu kullanın.
CLinkCtrl::GetIdealHeight
Bağlantı denetiminin ideal yüksekliğini alır.
int GetIdealHeight() const;
Dönüş Değeri
Denetimin piksel cinsinden ideal yüksekliği.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 ileti LM_GETIDEALHEIGHT davranışını uygular.
CLinkCtrl::GetIdealSize
Bağlantının belirtilen genişliğine bağlı olarak geçerli bağlantı denetimi için bağlantı metninin tercih edilen yüksekliğini hesaplar.
int GetIdealSize(
int cxMaxWidth,
SIZE* pSize) const;
Parametreler
cxMaxWidth
[in] Bağlantının piksel cinsinden maksimum genişliği.
pSize
[out] Windows SIZE yapısının işaretçisi. Bu yöntem döndürdüğünde, yapının cy üyesi SIZE
cxMaxWidth tarafından belirtilen bağlantı metni genişliği için ideal bağlantı metin yüksekliğini içerir. Yapının cx üyesi, gerçekten gerekli olan bağlantı metni genişliğini içerir.
Dönüş Değeri
Bağlantı metninin piksel cinsinden tercih edilen yüksekliği. Dönüş değeri, yapının cy üyesinin değeriyle SIZE
aynıdır.
Açıklamalar
Yöntemin GetIdealSize
bir örneği için CLinkCtrl::Create içindeki örne bakın.
Bu yöntem, Windows SDK'sında açıklanan LM_GETIDEALSIZE iletisini gönderir.
CLinkCtrl::GetItem
Bağlantı denetim öğesinin durumlarını ve özniteliklerini alır.
BOOL GetItem(PLITEM pItem) const;
Parametreler
pItem
Öğe bilgilerini almak için LITEM yapısına işaret eden bir işaretçi.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 ileti LM_GETITEM davranışını uygular.
CLinkCtrl::GetItemID
Bağlantı denetim öğesinin kimliğini alır.
BOOL GetItemID(
int iLink,
CString& strID) const;
BOOL GetItemID(
int iLink,
LPWSTR szID,
UINT cchID) const;
Parametreler
iLink
Bağlantı denetim öğesinin dizini.
strID
Belirtilen öğenin kimliğini içeren bir CStringT nesnesi.
szID
Belirtilen öğenin kimliğini içeren null ile sonlandırılan bir dize.
cchID
szID arabelleğinin karakter cinsinden boyutu.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Not
Bu işlev ayrıca szID veya strID arabelleği MAX_LINKID_TEXT küçükse YANLIŞ döndürür.
Açıklamalar
Belirli bir bağlantı denetim öğesinin kimliğini alır. Daha fazla bilgi için Windows SDK'sında win32 iletisi LM_GETITEM bakın.
CLinkCtrl::GetItemState
Bağlantı denetim öğesinin durumunu alır.
BOOL GetItemState(
int iLink,
UINT* pnState,
UINT stateMask = LIS_FOCUSED | LIS_ENABLED | LIS_VISITED) const;
Parametreler
iLink
Bağlantı denetim öğesinin dizini.
pnState
Belirtilen durum öğesinin değeri.
stateMask
Hangi durum öğesinin alınacaklarını açıklayan bayrakların birleşimi. Değerlerin listesi için LITEM yapısındaki state
üyenin açıklamasına bakın. İzin verilen öğeler, içinde state
izin verilen öğelerle aynıdır.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
Belirli bir bağlantı denetim öğesinin belirtilen durum öğesinin değerini alır. Daha fazla bilgi için Windows SDK'sında win32 iletisi LM_GETITEM bakın.
CLinkCtrl::GetItemUrl
Bağlantı denetim öğesi tarafından temsil edilen URL'yi alır.
BOOL GetItemUrl(
int iLink,
CString& strUrl) const;
BOOL GetItemUrl(
int iLink,
LPWSTR szUrl,
UINT cchUrl) const;
Parametreler
iLink
Bağlantı denetim öğesinin dizini.
strUrl
Belirtilen öğe tarafından temsil edilen URL'yi içeren bir CStringT nesnesi
szUrl
Belirtilen öğe tarafından temsil edilen URL'yi içeren null olarak sonlandırılan bir dize
cchUrl
szURL arabelleğinin karakter cinsinden boyutu.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Not
Bu işlev ayrıca szUrl veya strUrl arabelleği MAX_LINKID_TEXT küçükse YANLIŞ döndürür.
Açıklamalar
Belirtilen bağlantı denetim öğesi tarafından temsil edilen URL'yi alır. Daha fazla bilgi için Windows SDK'sında win32 iletisi LM_GETITEM bakın.
CLinkCtrl::HitTest
Kullanıcının belirtilen bağlantıya tıklayarak tıklaymadığını belirler.
BOOL HitTest(PLHITTESTINFO phti) const;
Parametreler
phti
Kullanıcının tıklandığı bağlantı hakkında herhangi bir bilgi içeren bir LHITTESTINFO
yapı işaretçisi.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 ileti LM_HITTEST davranışını uygular.
CLinkCtrl::SetItem
Bağlantı denetim öğesinin durumlarını ve özniteliklerini ayarlar.
BOOL SetItem(PLITEM pItem);
Parametreler
pItem
Ayarlanacağı bilgileri içeren LITEM yapısına yönelik bir işaretçi.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 ileti LM_SETITEM davranışını uygular.
CLinkCtrl::SetItemID
Bağlantı denetim öğesinin kimliğini alır.
BOOL SetItemID(
int iLink,
LPCWSTR szID);
Parametreler
iLink
Bağlantı denetim öğesinin dizini.
szID
Belirtilen öğenin kimliğini içeren null ile sonlandırılan bir dize.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
Belirli bir bağlantı denetim öğesinin kimliğini ayarlar. Daha fazla bilgi için Windows SDK'sında win32 iletisi LM_SETITEM bakın.
CLinkCtrl::SetItemState
Bağlantı denetim öğesinin durumunu alır.
BOOL SetItemState(
int iLink,
UINT state,
UINT stateMask = LIS_FOCUSED | LIS_ENABLED | LIS_VISITED);
Parametreler
iLink
Bağlantı denetim öğesinin dizini.
pnState
Ayarlanan belirtilen durum öğesinin değeri.
stateMask
Ayarlanan durum öğesini açıklayan bayrakların birleşimi. Değerlerin listesi için LITEM yapısındaki state
üyenin açıklamasına bakın. İzin verilen öğeler, içinde state
izin verilen öğelerle aynıdır.
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
Belirli bir bağlantı denetim öğesinin belirtilen durum öğesinin değerini ayarlar. Daha fazla bilgi için Windows SDK'sında win32 iletisi LM_SETITEM bakın.
CLinkCtrl::SetItemUrl
Bağlantı denetim öğesi tarafından temsil edilen URL'yi ayarlar.
BOOL SetItemUrl(
int iLink,
LPCWSTR szUrl);
Parametreler
iLink
Bağlantı denetim öğesinin dizini.
szUrl
Belirtilen öğe tarafından temsil edilen URL'yi içeren null olarak sonlandırılan bir dize
Dönüş Değeri
Başarılı olduğunda TRUE, hatada YANLIŞ döndürür.
Açıklamalar
Belirtilen bağlantı denetim öğesi tarafından temsil edilen URL'yi ayarlar. Daha fazla bilgi için Windows SDK'sında win32 iletisi LM_SETITEM bakın.