Aracılığıyla paylaş


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

CObject

CCmdTarget

CWnd

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ınCreateCLinkCtrl. 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_Link2adlı 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 stateizin 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 stateizin 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.

Ayrıca bkz.

Hiyerarşi Grafiği
CWnd Sınıfı