Aracılığıyla paylaş


CListCtrl Sınıf

Her biri bir simge (resim listesinden) ve bir etiketten oluşan bir öğe koleksiyonunu görüntüleyen "liste görünümü denetiminin" işlevselliğini kapsüller.

Sözdizimi

class CListCtrl : public CWnd

Üyeler

Ortak Oluşturucular

Veri Akışı Adı Açıklama
CListCtrl::CListCtrl Bir CListCtrl nesne oluşturur.

Genel Yöntemler

Veri Akışı Adı Açıklama
CListCtrl::ApproximateViewRect Liste görünümü denetiminin öğelerini görüntülemek için gereken genişliği ve yüksekliği belirler.
CListCtrl::Arrange Kılavuzdaki öğeleri hizalar.
CListCtrl::CancelEditLabel Öğe metni düzenleme işlemini iptal eder.
CListCtrl::Create Bir liste denetimi oluşturur ve bunu bir CListCtrl nesneye ekler.
CListCtrl::CreateDragImage Belirtilen bir öğe için sürükleyerek resim listesi oluşturur.
CListCtrl::CreateEx Belirtilen Windows genişletilmiş stilleriyle bir liste denetimi oluşturur ve bunu bir CListCtrl nesneye ekler.
CListCtrl::DeleteAllItems Denetimdeki tüm öğeleri siler.
CListCtrl::DeleteColumn Liste görünümü denetiminden bir sütunu siler.
CListCtrl::DeleteItem Denetimden bir öğeyi siler.
CListCtrl::DrawItem Sahip çizim denetiminin görsel bir yönü değiştiğinde çağrılır.
CListCtrl::EditLabel Bir öğenin metnini yerinde düzenlemeye başlar.
CListCtrl::EnableGroupView Liste görünümü denetimindeki öğelerin grup olarak görüntülenip görüntülenmeyeceğini etkinleştirir veya devre dışı bırakır.
CListCtrl::EnsureVisible Bir öğenin görünür olmasını sağlar.
CListCtrl::FindItem Belirtilen özelliklere sahip bir liste görünümü öğesini arar.
CListCtrl::GetBkColor Liste görünümü denetiminin arka plan rengini alır.
CListCtrl::GetBkImage Liste görünümü denetiminin geçerli arka plan görüntüsünü alır.
CListCtrl::GetCallbackMask Liste görünümü denetimi için geri çağırma maskesini alır.
CListCtrl::GetCheck Bir öğeyle ilişkili durum görüntüsünün geçerli görüntüleme durumunu alır.
CListCtrl::GetColumn Denetimin sütununun özniteliklerini alır.
CListCtrl::GetColumnOrderArray Liste görünümü denetiminin sütun sırasını (soldan sağa) alır.
CListCtrl::GetColumnWidth Rapor görünümünde veya liste görünümünde bir sütunun genişliğini alır.
CListCtrl::GetCountPerPage Liste görünümü denetimine dikey olarak sığabilecek öğe sayısını hesaplar.
CListCtrl::GetEditControl Öğenin metnini düzenlemek için kullanılan düzenleme denetiminin tutamacını alır.
CListCtrl::GetEmptyText Geçerli liste görünümü denetimi boşsa görüntülenecek dizeyi alır.
CListCtrl::GetExtendedStyle Liste görünümü denetiminin geçerli genişletilmiş stillerini alır.
CListCtrl::GetFirstSelectedItemPosition Liste görünümü denetiminde seçilen ilk liste görünümü öğesinin konumunu alır.
CListCtrl::GetFocusedGroup Geçerli liste görünümü denetiminde klavye odağı olan grubu alır.
CListCtrl::GetGroupCount Geçerli liste görünümü denetimindeki grup sayısını alır.
CListCtrl::GetGroupInfo Liste görünümü denetiminin belirtilen grubunun bilgilerini alır.
CListCtrl::GetGroupInfoByIndex Geçerli liste görünümü denetiminde belirtilen grup hakkındaki bilgileri alır.
CListCtrl::GetGroupMetrics Bir grubun ölçümlerini alır.
CListCtrl::GetGroupRect Geçerli liste görünümü denetiminde belirtilen bir grup için sınırlayıcı dikdörtgeni alır.
CListCtrl::GetGroupState Geçerli liste görünümü denetiminde belirtilen grubun durumunu alır.
CListCtrl::GetHeaderCtrl Liste görünümü denetiminin üst bilgi denetimini alır.
CListCtrl::GetHotCursor Liste görünümü denetimi için etkin izleme etkinleştirildiğinde kullanılan imleci alır.
CListCtrl::GetHotItem İmlecin altında bulunan liste görünümü öğesini alır.
CListCtrl::GetHoverTime Liste görünümü denetiminin geçerli vurgulama zamanını alır.
CListCtrl::GetImageList Liste görünümü öğelerini çizmek için kullanılan resim listesinin tutamacını alır.
CListCtrl::GetInsertMark Ekleme işaretinin geçerli konumunu alır.
CListCtrl::GetInsertMarkColor Ekleme işaretinin geçerli rengini alır.
CListCtrl::GetInsertMarkRect Ekleme noktasını sınırlayan dikdörtgeni alır.
CListCtrl::GetItem Liste görünümü öğesinin özniteliklerini alır.
CListCtrl::GetItemCount Liste görünümü denetimindeki öğe sayısını alır.
CListCtrl::GetItemData Bir öğeyle ilişkili uygulamaya özgü değeri alır.
CListCtrl::GetItemIndexRect Geçerli liste görünümü denetimindeki bir alt öğenin tümü veya bir bölümü için sınırlayıcı dikdörtgeni alır.
CListCtrl::GetItemPosition Liste görünümü öğesinin konumunu alır.
CListCtrl::GetItemRect Bir öğenin sınırlayıcı dikdörtgenini alır.
CListCtrl::GetItemSpacing Geçerli liste görünümü denetimindeki öğeler arasındaki aralığı hesaplar.
CListCtrl::GetItemState Liste görünümü öğesinin durumunu alır.
CListCtrl::GetItemText Liste görünümü öğesinin veya alt öğesinin metnini alır.
CListCtrl::GetNextItem Belirtilen özelliklere sahip ve belirli bir öğeyle belirtilen ilişkisi olan bir liste görünümü öğesini arar.
CListCtrl::GetNextItemIndex Geçerli liste görünümü denetiminde belirtilen özellik kümesine sahip öğenin dizinini alır.
CListCtrl::GetNextSelectedItem Liste görünümü öğesi konumunun dizinini ve yineleme için bir sonraki seçili liste görünümü öğesinin konumunu alır.
CListCtrl::GetNumberOfWorkAreas Liste görünümü denetimi için geçerli çalışma alanı sayısını alır.
CListCtrl::GetOrigin Liste görünümü denetimi için geçerli görünüm kaynağını alır.
CListCtrl::GetOutlineColor Liste görünümü denetiminin kenarlığı rengini alır.
CListCtrl::GetSelectedColumn Liste denetiminde seçili durumdaki sütunun dizinini alır.
CListCtrl::GetSelectedCount Liste görünümü denetimindeki seçili öğelerin sayısını alır.
CListCtrl::GetSelectionMark Liste görünümü denetiminin seçim işaretini alır.
CListCtrl::GetStringWidth Belirli bir dizenin tümünü görüntülemek için gereken en düşük sütun genişliğini belirler.
CListCtrl::GetSubItemRect Liste görünümü denetimindeki bir öğenin sınırlayıcı dikdörtgenini alır.
CListCtrl::GetTextBkColor Liste görünümü denetiminin metin arka plan rengini alır.
CListCtrl::GetTextColor Liste görünümü denetiminin metin rengini alır.
CListCtrl::GetTileInfo Liste görünümü denetimindeki bir kutucuk hakkındaki bilgileri alır.
CListCtrl::GetTileViewInfo Kutucuk görünümünde liste görünümü denetimi hakkındaki bilgileri alır.
CListCtrl::GetToolTips Liste görünümü denetiminin araç ipuçlarını görüntülemek için kullandığı araç ipucu denetimini alır.
CListCtrl::GetTopIndex En üstteki görünür öğenin dizinini alır.
CListCtrl::GetView Liste görünümü denetiminin görünümünü alır.
CListCtrl::GetViewRect Liste görünümü denetimindeki tüm öğelerin sınırlayıcı dikdörtgenini alır.
CListCtrl::GetWorkAreas Liste görünümü denetiminin geçerli çalışma alanlarını alır.
CListCtrl::HasGroup Liste görünümü denetiminin belirtilen gruba sahip olup olmadığını belirler.
CListCtrl::HitTest Hangi liste görünümü öğesinin belirtilen konumda olduğunu belirler.
CListCtrl::InsertColumn Liste görünümü denetimine yeni bir sütun ekler.
CListCtrl::InsertGroup Liste görünümü denetimine bir grup ekler.
CListCtrl::InsertGroupSorted Belirtilen grubu sıralı bir grup listesine ekler.
CListCtrl::InsertItem Liste görünümü denetimine yeni bir öğe ekler.
CListCtrl::InsertMarkHitTest Belirtilen noktaya en yakın ekleme noktasını alır.
CListCtrl::IsGroupViewEnabled Liste görünümü denetimi için grup görünümünün etkinleştirilip etkinleştirilmediğini belirler.
CListCtrl::IsItemVisible Geçerli liste görünümü denetiminde belirtilen bir öğenin görünür olup olmadığını gösterir.
CListCtrl::MapIDToIndex Geçerli liste görünümü denetimindeki bir öğenin benzersiz kimliğini dizinle eşler.
CListCtrl::MapIndexToID Geçerli liste görünümü denetimindeki bir öğenin dizinini benzersiz bir kimlikle eşler.
CListCtrl::MoveGroup Belirtilen grubu taşır.
CListCtrl::MoveItemToGroup Belirtilen grubu liste görünümü denetiminin belirtilen sıfır tabanlı dizinine taşır.
CListCtrl::RedrawItems Liste görünümü denetimini bir öğe aralığını yeniden boyamaya zorlar.
CListCtrl::RemoveAllGroups Liste görünümü denetiminden tüm grupları kaldırır.
CListCtrl::RemoveGroup Belirtilen grubu liste görünümü denetiminden kaldırır.
CListCtrl::Scroll Liste görünümü denetiminin içeriğini kaydırıyor.
CListCtrl::SetBkColor Liste görünümü denetiminin arka plan rengini ayarlar.
CListCtrl::SetBkImage Liste görünümü denetiminin geçerli arka plan görüntüsünü ayarlar.
CListCtrl::SetCallbackMask Liste görünümü denetimi için geri çağırma maskesini ayarlar.
CListCtrl::SetCheck Bir öğeyle ilişkili durum görüntüsünün geçerli görüntüleme durumunu ayarlar.
CListCtrl::SetColumn Liste görünümü sütununun özniteliklerini ayarlar.
CListCtrl::SetColumnOrderArray Liste görünümü denetiminin sütun sırasını (soldan sağa) ayarlar.
CListCtrl::SetColumnWidth Rapor görünümünde veya liste görünümünde bir sütunun genişliğini değiştirir.
CListCtrl::SetExtendedStyle Liste görünümü denetiminin geçerli genişletilmiş stillerini ayarlar.
CListCtrl::SetGroupInfo Liste görünümü denetiminin belirtilen grubu için bilgileri ayarlar.
CListCtrl::SetGroupMetrics Liste görünümü denetiminin grup ölçümlerini ayarlar.
CListCtrl::SetHotCursor Liste görünümü denetimi için etkin izleme etkinleştirildiğinde kullanılan imleci ayarlar.
CListCtrl::SetHotItem Liste görünümü denetiminin geçerli sık erişimli öğesini ayarlar.
CListCtrl::SetHoverTime Liste görünümü denetiminin geçerli vurgulama zamanını ayarlar.
CListCtrl::SetIconSpacing Liste görünümü denetimindeki simgeler arasındaki aralığı ayarlar.
CListCtrl::SetImageList Liste görünümü denetimine resim listesi atar.
CListCtrl::SetInfoTip Araç ipucu metnini ayarlar.
CListCtrl::SetInsertMark Ekleme noktasını tanımlı konuma ayarlar.
CListCtrl::SetInsertMarkColor Ekleme noktasının rengini ayarlar.
CListCtrl::SetItem Liste görünümü öğesinin özniteliklerinin bazılarını veya tümünü ayarlar.
CListCtrl::SetItemCount Çok sayıda öğe eklemek için bir liste görünümü denetimi hazırlar.
CListCtrl::SetItemCountEx Sanal liste görünümü denetimi için öğe sayısını ayarlar.
CListCtrl::SetItemData Öğenin uygulamaya özgü değerini ayarlar.
CListCtrl::SetItemIndexState Geçerli liste görünümü denetimindeki bir öğenin durumunu ayarlar.
CListCtrl::SetItemPosition Öğeyi liste görünümü denetiminde belirtilen konuma taşır.
CListCtrl::SetItemState Liste görünümü denetimindeki bir öğenin durumunu değiştirir.
CListCtrl::SetItemText Liste görünümü öğesinin veya alt öğesinin metnini değiştirir.
CListCtrl::SetOutlineColor Liste görünümü denetiminin kenarlığı rengini ayarlar.
CListCtrl::SetSelectedColumn Liste görünümü denetiminin seçili sütununu ayarlar.
CListCtrl::SetSelectionMark Liste görünümü denetiminin seçim işaretini ayarlar.
CListCtrl::SetTextBkColor Liste görünümü denetimindeki metnin arka plan rengini ayarlar.
CListCtrl::SetTextColor Liste görünümü denetiminin metin rengini ayarlar.
CListCtrl::SetTileInfo Liste görünümü denetiminin kutucuğunun bilgilerini ayarlar.
CListCtrl::SetTileViewInfo Liste görünümü denetiminin kutucuk görünümünde kullandığı bilgileri ayarlar.
CListCtrl::SetToolTips Liste görünümü denetiminin araç ipuçlarını görüntülemek için kullanacağı araç ipucu denetimini ayarlar.
CListCtrl::SetView Liste görünümü denetiminin görünümünü ayarlar.
CListCtrl::SetWorkAreas Simgelerin liste görünümü denetiminde görüntülenebileceği alanı ayarlar.
CListCtrl::SortGroups Liste görünümü denetiminin gruplarını kullanıcı tanımlı bir işlevle sıralar.
CListCtrl::SortItems Uygulama tanımlı karşılaştırma işlevini kullanarak liste görünümü öğelerini sıralar.
CListCtrl::SortItemsEx Uygulama tanımlı karşılaştırma işlevini kullanarak liste görünümü öğelerini sıralar.
CListCtrl::SubItemHitTest Varsa, hangi liste görünümü öğesinin belirli bir konumda olduğunu belirler.
CListCtrl::Update Denetimi belirtilen bir öğeyi yeniden boyamaya zorlar.

Açıklamalar

Bir simge ve etikete ek olarak, her öğede simgenin ve etiketin sağındaki sütunlarda görüntülenen bilgiler bulunabilir. Bu denetim (ve dolayısıyla CListCtrl sınıfı) yalnızca Windows 95/98 ve Windows NT sürüm 3.51 ve üzeri altında çalışan programlarda kullanılabilir.

Aşağıda sınıfına kısa bir genel bakış sağlanır CListCtrl . Ayrıntılı, kavramsal bir tartışma için bkz . Kullanma CListCtrl ve Denetimler.

Görünümler

Liste görünümü denetimleri, içeriklerini "görünümler" olarak adlandırılan dört farklı şekilde görüntüleyebilir.

  • Simge görünümü

    Her öğe, altında etiket bulunan tam boyutlu bir simge (32 x 32 piksel) olarak görünür. Kullanıcı, öğeleri liste görünümü penceresindeki herhangi bir konuma sürükleyebilirsiniz.

  • Küçük simge görünümü

    Her öğe, etiketi sağda olan küçük bir simge (16 x 16 piksel) olarak görünür. Kullanıcı, öğeleri liste görünümü penceresindeki herhangi bir konuma sürükleyebilirsiniz.

  • Liste görünümü

    Her öğe, sağ tarafında etiket bulunan küçük bir simge olarak görünür. Öğeler sütunlar halinde düzenlenir ve liste görünümü penceresinde herhangi bir konuma sürüklenemez.

  • Rapor görünümü

    Her öğe, sağda sütunlar halinde düzenlenmiş ek bilgilerle birlikte kendi satırında görünür. En soldaki sütun küçük simgeyi ve etiketi, izleyen sütunlar ise uygulama tarafından belirtilen alt öğeleri içerir. Katıştırılmış üst bilgi denetimi (sınıf CHeaderCtrl) bu sütunları uygular. Rapor görünümündeki üst bilgi denetimi ve sütunlar hakkında daha fazla bilgi için bkz . Kullanma CListCtrl: Denetime Sütun Ekleme (Rapor Görünümü).

Geçerli görünümü denetimin geçerli liste görünümünün stili belirler. Bu stiller ve kullanımları hakkında daha fazla bilgi için bkz . Kullanma CListCtrl: Liste Denetim Stillerini Değiştirme.

Genişletilmiş Stiller

Standart liste stillerine ek olarak, sınıf CListCtrl zenginleştirilmiş işlevsellik sağlayan büyük bir genişletilmiş stil kümesini destekler. Bu işleve bazı örnekler şunlardır:

  • Vurgulama seçimi

    Etkinleştirildiğinde, imleç belirli bir süre boyunca öğenin üzerinde kaldığında öğenin otomatik olarak seçilmesine izin verir.

  • Sanal liste görünümleri

    Etkinleştirildiğinde denetimin en fazla DWORD öğesini desteklemesine izin verir. Bu, öğe verilerini yönetme yükünü uygulamaya yerleştirerek mümkündür. Öğe seçimi ve odak bilgileri dışında, tüm öğe bilgileri uygulama tarafından yönetilmelidir. Daha fazla bilgi için bkz . Kullanma CListCtrl: Sanal Liste Denetimleri.

  • Bir ve iki tıklamayla etkinleştirme

    Etkinleştirildiğinde, etkin izlemeye (öğe metninin otomatik vurgulanması) ve vurgulanan öğenin bir veya iki tıklamayla etkinleştirilmesine izin verir.

  • Sütun sıralamasını sürükleyip bırakma

    Etkinleştirildiğinde, liste görünümü denetimindeki sütunların sürükle ve bırak yeniden sıralanmasına izin verir. Yalnızca rapor görünümünde kullanılabilir.

Bu yeni genişletilmiş stilleri kullanma hakkında bilgi için bkz . Kullanma CListCtrl: Liste Denetim Stillerini Değiştirme.

Öğeler ve Alt Öğeler

Liste görünümü denetimindeki her öğe bir simgeden (resim listesinden), etiketten, geçerli durumdan ve uygulama tanımlı değerden ("öğe verileri" olarak adlandırılır) oluşur. Her öğeyle bir veya daha fazla alt öğe de ilişkilendirilebilir. "Alt öğe", rapor görünümünde bir öğenin simgesinin ve etiketinin sağındaki bir sütunda görüntülenebilen bir dizedir. Liste görünümü denetimindeki tüm öğeler aynı sayıda alt öğeye sahip olmalıdır.

Sınıfı CListCtrl , bu öğeleri eklemek, silmek, bulmak ve değiştirmek için çeşitli işlevler sağlar. Daha fazla bilgi için bkz CListCtrl::GetItem. , CListCtrl::InsertItemve CListCtrl::FindItem, Denetime Öğe Ekleme ve Liste denetimlerinde Kaydırma, Düzenleme, Sıralama ve Bulma.

Varsayılan olarak, liste görünümü denetimi bir öğenin simgesini ve metin özniteliklerini depolamaktan sorumludur. Ancak, bu öğe türlerine ek olarak, sınıfı CListCtrl "geri çağırma öğeleri" destekler. "Geri arama öğesi", denetimin yerine uygulamanın metin, simge veya her ikisini birden depoladığı bir liste görünümü öğesidir. Geri çağırma maskesi, uygulama tarafından hangi öğe özniteliklerinin (metin ve/veya simge) sağleneceğini belirtmek için kullanılır. Bir uygulama geri çağırma öğeleri kullanıyorsa, metin ve/veya simge özniteliklerini isteğe bağlı olarak sağlayabilmesi gerekir. Geri arama öğeleri, uygulamanız bu bilgilerin bazılarını zaten barındırdığında yararlıdır. Daha fazla bilgi için bkz . Kullanma CListCtrl: Geri Arama Öğeleri ve Geri Çağırma Maskesi.

Resim Listeleri

Liste görünümü öğeleri için simgeler, üst bilgi öğesi görüntüleri ve uygulama tanımlı durumlar, oluşturduğunuz ve liste görünümü denetimine atadığınız birkaç görüntü listesinde (sınıfa CImageListgöre uygulanır) bulunur. Her liste görünümü denetiminin en fazla dört farklı resim listesi türü olabilir:

  • Büyük simge

    Tam boyutlu simgeler için simge görünümünde kullanılır.

  • Küçük simge

    Simge görünümünde kullanılan simgelerin daha küçük sürümleri için küçük simge, liste ve rapor görünümlerinde kullanılır.

  • Uygulama tanımlı durum

    Uygulama tanımlı durumu belirtmek için öğenin simgesinin yanında görüntülenen durum görüntülerini içerir.

  • Üst bilgi öğesi

    Her üst bilgi denetim öğesinde görüntülenen küçük resimler için rapor görünümünde kullanılır.

Varsayılan olarak, liste görünümü denetimi yok edildiğinde kendisine atanan görüntü listelerini yok eder; ancak geliştirici, uygulama tarafından belirlendiği gibi artık kullanılmadığında her görüntü listesini yok ederek bu davranışı özelleştirebilir. Daha fazla bilgi için bkz . Kullanma CListCtrl: Liste Öğeleri ve Görüntü Listeleri.

Devralma Hiyerarşisi

CObject

CCmdTarget

CWnd

CListCtrl

Gereksinimler

Üstbilgi: afxcmn.h

CListCtrl::ApproximateViewRect

Liste görünümü denetiminin öğelerini görüntülemek için gereken genişliği ve yüksekliği belirler.

CSize ApproximateViewRect(
    CSize sz = CSize(-1, -1),
    int iCount = -1) const;

Parametreler

sz
Denetimin piksel cinsinden önerilen boyutları. Boyutlar belirtilmezse, çerçeve denetimin geçerli genişlik veya yükseklik değerlerini kullanır.

iCount
Denetimde görüntülenecek öğe sayısı. Geçerli denetimdeki öğelerin toplam sayısını kullanmak için -1'i geçirin.

Dönüş Değeri

CSize Öğeleri piksel cinsinden görüntülemek için gereken yaklaşık genişliği ve yüksekliği içeren bir nesne.

Açıklamalar

Bu üye işlevi, ListView_ApproximateViewRectWindows SDK'da açıklandığı gibi Win32 makrosunun davranışını uygular.

CListCtrl::Arrange

Simge görünümündeki öğeleri kılavuza hizalı olacak şekilde yeniden konumlandırır.

BOOL Arrange(UINT nCode);

Parametreler

nCode
Öğeler için hizalama stilini belirtir. Aşağıdaki değerlerden biri olabilir:

  • LVA_ALIGNLEFT Öğeleri pencerenin sol kenarı boyunca hizalar.
  • LVA_ALIGNTOP Öğeleri pencerenin üst kenarı boyunca hizalar.
  • LVA_DEFAULT Öğeleri liste görünümünün geçerli hizalama stillerine (varsayılan değer) göre hizalar.
  • LVA_SNAPTOGRID Tüm simgeleri en yakın kılavuz konumuna yaslar.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Açıklamalar

nCode parametresi hizalama stilini belirtir.

Örnek

// Align all of the list view control items along the top
// of the window (the list view control must be in icon or
// small icon mode).
m_myListCtrl.Arrange(LVA_ALIGNTOP);

CListCtrl::CancelEditLabel

Öğe metni düzenleme işlemini iptal eder.

void CancelEditLabel();

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_CANCELEDITLABEL işlevselliğine öykünmektedir.

CListCtrl::CListCtrl

Bir CListCtrl nesne oluşturur.

CListCtrl();

CListCtrl::Create

Bir liste denetimi oluşturur ve bunu bir CListCtrl nesneye ekler.

virtual BOOL Create(
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID);

Parametreler

dwStyle
Liste denetiminin stilini belirtir. Denetime liste denetim stillerinin herhangi bir bileşimini uygulayın. Bu stillerin tam listesi için bkz. Windows SDK'sında Liste görünümü pencere stilleri. kullanarak SetExtendedStylebir denetime özgü genişletilmiş stilleri ayarlayın.

rect
Liste denetiminin boyutunu ve konumunu belirtir. Nesne veya RECT yapı olabilirCRect.

pParentWnd
Liste denetiminin üst penceresini ( genellikle bir CDialog) belirtir. NULL olmamalıdır.

nID
Liste denetiminin kimliğini belirtir.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Açıklamalar

İki adımda bir CListCtrl oluşturursunuz. İlk olarak oluşturucuyu çağırın ve ardından liste görünümü denetimini oluşturan ve nesnesine ekleyen öğesini çağırınCreateCListCtrl.

Liste denetimi nesnesine genişletilmiş Windows stilleri uygulamak için yerine öğesini çağırın CreateEx Create.

Örnek

m_myListCtrl.Create(
    WS_CHILD|WS_VISIBLE|WS_BORDER|LVS_REPORT|LVS_EDITLABELS,
    CRect(10,10,400,200), pParentWnd, IDD_MYLISTCTRL);

CListCtrl::CreateEx

Bir denetim (alt pencere) oluşturur ve bunu nesnesiyle CListCtrl ilişkilendirir.

virtual BOOL CreateEx(
    DWORD dwExStyle,
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID);

Parametreler

dwExStyle
Oluşturulan denetimin genişletilmiş stilini belirtir. Genişletilmiş Windows stillerinin listesi için Windows SDK'sında için CreateWindowEx dwExStyle parametresine bakın.

dwStyle
Liste denetiminin stilini belirtir. Denetime liste denetim stillerinin herhangi bir bileşimini uygulayın. Bu stillerin tam listesi için bkz . Windows SDK'sında Liste görünümü pencere stilleri .

rect
oluşturulacak pencerenin boyutunu ve konumunu istemci koordinatlarında pParentWndaçıklayan bir RECT yapı başvurusu.

pParentWnd
Denetimin üst öğesi olan pencere işaretçisi.

nID
Denetimin alt pencere kimliği.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Create Yerine, Windows genişletilmiş stil ön biçimi WS_EX_tarafından belirtilen genişletilmiş Windows stilleri uygulamak için kullanınCreateEx.

CreateEx tarafından dwExStylebelirtilen genişletilmiş Windows stilleriyle denetimi oluşturur. Bir denetime özgü genişletilmiş stilleri ayarlamak için çağrısı yapın SetExtendedStyle. Örneğin, WS_EX_CONTEXTHELP gibi stilleri ayarlamak için kullanın CreateEx , ancak LVS_EX_FULLROWSELECT gibi stilleri ayarlamak için kullanın SetExtendedStyle . Daha fazla bilgi için Windows SDK'sında Genişletilmiş Liste Görünümü Stilleri makalesinde açıklanan stiller konusuna bakın.

CListCtrl::CreateDragImage

tarafından nItembelirtilen öğe için bir sürükleme görüntüsü listesi oluşturur.

CImageList* CreateDragImage(
    int nItem,
    LPPOINT lpPoint);

Parametreler

*nItem*
Sürüklenen resim listesi oluşturulacak öğenin dizini.

lpPoint
Görüntünün sol üst köşesinin başlangıç konumunu görünüm koordinatlarında alan bir POINT yapının adresi.

Dönüş Değeri

Başarılı olursa, sürükle resim listesinin işaretçisi; aksi takdirde NULL.

Açıklamalar

CImageList Nesne kalıcıdır ve bittiğinde silmeniz gerekir. Örneğin:

CImageList* pImageList = m_myListCtrl.CreateDragImage(nItem, &point);

// do something

delete pImageList;

CListCtrl::DeleteAllItems

Liste görünümü denetimindeki tüm öğeleri siler.

BOOL DeleteAllItems();

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Örnek

// Delete all of the items from the list view control.
m_myListCtrl.DeleteAllItems();
ASSERT(m_myListCtrl.GetItemCount() == 0);

CListCtrl::DeleteColumn

Liste görünümü denetiminden bir sütunu siler.

BOOL DeleteColumn(int nCol);

Parametreler

nCol
Silinecek sütunun dizini.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Örnek

int nColumnCount = m_myListCtrl.GetHeaderCtrl()->GetItemCount();

// Delete all of the columns.
for (int i=0; i < nColumnCount; i++)
{
    m_myListCtrl.DeleteColumn(0);
}

CListCtrl::DeleteItem

Liste görünümü denetiminden bir öğeyi siler.

BOOL DeleteItem(int nItem);

Parametreler

nItem
Silinecek öğenin dizinini belirtir.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Örnek

int nCount = m_myListCtrl.GetItemCount();

// Delete all of the items from the list view control.
for (int i=0; i < nCount; i++)
{
    m_myListCtrl.DeleteItem(0);
}

CListCtrl::DrawItem

Sahip çizim listesi görünümü denetiminin görsel bir yönü değiştiğinde çerçeve tarafından çağrılır.

virtual void DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct);

Parametreler

lpDrawItemStruct
Gerekli çizim türü hakkında bilgi içeren bir yapıya uzun bir DRAWITEMSTRUCT işaretçi.

Açıklamalar

Yapının itemAction üyesi DRAWITEMSTRUCT , gerçekleştirilecek çizim eylemini tanımlar.

Varsayılan olarak, bu üye işlevi hiçbir şey yapmaz. Sahip çizim CListCtrl nesnesi için çizim uygulamak için bu üye işlevini geçersiz kılın.

Uygulama, bu üye işlevi sonlanmadan önce içinde lpDrawItemStruct sağlanan görüntü bağlamı için seçilen tüm grafik cihaz arabirimi (GDI) nesnelerini geri yüklemelidir.

CListCtrl::EditLabel

Bir öğenin metnini yerinde düzenlemeye başlar.

CEdit* EditLabel(int nItem);

Parametreler

nItem
Düzenlenecek liste görünümü öğesinin dizini.

Dönüş Değeri

Başarılı olursa, öğe metnini düzenlemek için CEdit kullanılan nesneye bir işaretçi; aksi takdirde NULL.

Açıklamalar

Pencere stiline LVS_EDITLABELS sahip bir liste görünümü denetimi, kullanıcının öğe etiketlerini yerinde düzenlemesine olanak tanır. Kullanıcı, odağı olan bir öğenin etiketine tıklayarak düzenlemeye başlar.

Belirtilen liste görünümü öğesinin metnini yerinde düzenlemeye başlamak için bu işlevi kullanın.

Örnek

// Make sure the focus is set to the list view control.
m_myListCtrl.SetFocus();

// Show the edit control on the label of the first
// item in the list view control.
CEdit* pmyEdit = m_myListCtrl.EditLabel(1);
ASSERT(pmyEdit != NULL);

CListCtrl::EnableGroupView

Liste görünümü denetimindeki öğelerin grup olarak görüntülenip görüntülenmeyeceğini etkinleştirir veya devre dışı bırakır.

LRESULT EnableGroupView(BOOL fEnable);

Parametreler

fEnable
Görüntülenen öğeleri gruplandırmak için listview denetiminin etkinleştirilip etkinleştirilmeymeyeceğini gösterir. TRUE gruplandırma özelliğini etkinleştirmek için; FALSE öğesini seçin.

Dönüş Değeri

Aşağıdaki değerlerden birini döndürür:

  • 0 Liste görünümü öğelerini grup olarak görüntüleme özelliği zaten etkin veya devre dışı.
  • 1 Denetimin durumu başarıyla değiştirildi.
  • -1 İşlem başarısız oldu.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_ENABLEGROUPVIEW işlevselliğine öykünmektedir.

CListCtrl::EnsureVisible

Liste görünümü öğesinin en azından kısmen görünür olmasını sağlar.

BOOL EnsureVisible(
    int nItem,
    BOOL bPartialOK);

Parametreler

nItem
Görünür olacak liste görünümü öğesinin dizini.

bPartialOK
Kısmi görünürlüğün kabul edilebilir olup olmadığını belirtir.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Açıklamalar

Gerekirse liste görünümü denetimi kaydırılır. bPartialOK parametresi sıfırdan farklıysa, öğe kısmen görünür durumdaysa kaydırma gerçekleşmez.

Örnek

// Ensure that the last item is visible.
int nCount = m_myListCtrl.GetItemCount();
if (nCount > 0)
    m_myListCtrl.EnsureVisible(nCount-1, FALSE);

CListCtrl::FindItem

Belirtilen özelliklere sahip bir liste görünümü öğesini arar.

int FindItem(
    LVFINDINFO* pFindInfo,
    int nStart = -1) const;

Parametreler

pFindInfo
Aranacak öğe hakkında bilgi içeren bir LVFINDINFO yapı işaretçisi.

nStart
Aramaya başlamak için öğenin dizini veya baştan başlamak için -1. nStart öğesi - 1'e eşit değilse nStart aramanın dışında tutulur.

Dönüş Değeri

Başarılı olursa öğenin dizini veya aksi takdirde -1.

Açıklamalar

pFindInfo parametresi, liste görünümü öğesini aramak için kullanılan bilgileri içeren bir LVFINDINFO yapıyı gösterir.

Örnek

LVFINDINFO info;
int nIndex;

info.flags = LVFI_PARTIAL|LVFI_STRING;
info.psz = _T("item");

// Delete all of the items that begin with the string.
while ((nIndex = m_myListCtrl.FindItem(&info)) != -1)
{
    m_myListCtrl.DeleteItem(nIndex);
}

CListCtrl::GetBkColor

Liste görünümü denetiminin arka plan rengini alır.

COLORREF GetBkColor() const;

Dönüş Değeri

RGB rengi belirtmek için kullanılan 32 bit değer.

Örnek

örneğine CListCtrl::SetBkColorbakın.

CListCtrl::GetBkImage

Liste görünümü denetiminin geçerli arka plan görüntüsünü alır.

BOOL GetBkImage(LVBKIMAGE* plvbkImage) const;

Parametreler

plvbkImage
Liste görünümünün geçerli arka plan görüntüsünü içeren bir LVBKIMAGE yapı işaretçisi.

Dönüş Değeri

Başarılı olursa sıfır olmayan veya aksi takdirde sıfır döndürür.

Açıklamalar

Bu yöntem, ListView_GetBkImageWindows SDK'sında açıklandığı gibi Win32 makrosunun davranışını uygular.

Örnek

LVBKIMAGE bki;

// If no background image is set for the list view control use
// the Microsoft homepage image as the background image.
if (m_myListCtrl.GetBkImage(&bki) && (bki.ulFlags == LVBKIF_SOURCE_NONE))
{
    m_myListCtrl.SetBkImage(
        _T("https://www.microsoft.com/library/images/gifs/homepage/microsoft.gif"),
        TRUE);
}

CListCtrl::GetCallbackMask

Liste görünümü denetimi için geri çağırma maskesini alır.

UINT GetCallbackMask() const;

Dönüş Değeri

Liste görünümü denetiminin geri çağırma maskesi.

Açıklamalar

"Geri arama öğesi", denetimin yerine uygulamanın metin, simge veya her ikisini birden depoladığı bir liste görünümü öğesidir. Liste görünümü denetimi bu öznitelikleri sizin için depolasa da, uygulamanız bu bilgilerin bazılarını zaten koruyorsa geri çağırma öğelerini kullanmak isteyebilirsiniz. Geri çağırma maskesi, uygulama tarafından hangi öğe durumu bitlerinin tutulacaklarını belirtir ve belirli bir öğe yerine denetimin tamamına uygulanır. Geri çağırma maskesi varsayılan olarak sıfırdır, yani denetim tüm öğe durumlarını izler. Bir uygulama geri çağırma öğeleri kullanıyorsa veya sıfır olmayan bir geri çağırma maskesi belirtiyorsa, isteğe bağlı olarak liste görünümü öğesi özniteliklerini sağlayabilmesi gerekir.

Örnek

örneğine CListCtrl::SetCallbackMaskbakın.

CListCtrl::GetCheck

Bir öğeyle ilişkili durum görüntüsünün geçerli görüntüleme durumunu alır.

BOOL GetCheck(int nItem) const;

Parametreler

nItem
Liste denetim öğesinin sıfır tabanlı dizini.

Dönüş Değeri

Öğe seçiliyse sıfır olmayan, aksi takdirde 0.

Açıklamalar

Bu üye işlevi, ListView_GetCheckStateWindows SDK'da açıklandığı gibi Win32 makrosunun davranışını uygular.

Örnek

örneğine CListCtrl::SetCheckbakın.

CListCtrl::GetColumn

Liste görünümü denetiminin sütununun özniteliklerini alır.

BOOL GetColumn(
    int nCol,
    LVCOLUMN* pColumn) const;

Parametreler

nCol
Öznitelikleri alınacak sütunun dizini.

pColumn
Sütun hakkında alınacak ve alınacak bilgileri belirten bir LVCOLUMN yapının adresi. Üye mask , alınacak sütun özniteliklerini belirtir. mask Üye LVCF_TEXT değerini belirtirse, pszText üyenin öğe metnini alan arabelleğin adresini içermesi ve üyenin cchTextMax arabellek boyutunu belirtmesi gerekir.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Açıklamalar

Yapı, LVCOLUMN rapor görünümündeki bir sütun hakkında bilgi içerir.

Örnek

LVCOLUMN col;

col.mask = LVCF_WIDTH;

// Double the column width of the first column.
if (m_myListCtrl.GetColumn(0, &col))
{
    col.cx *= 2;
    m_myListCtrl.SetColumn(0, &col);
}

CListCtrl::GetColumnOrderArray

Liste görünümü denetiminin sütun sırasını (soldan sağa) alır.

BOOL GetColumnOrderArray(
    LPINT piArray,
    int iCount = -1);

Parametreler

piArray
Liste görünümü denetimindeki sütunların dizin değerlerini içeren bir arabelleğe yönelik işaretçi. Arabellek, liste görünümü denetimindeki toplam sütun sayısını içerecek kadar büyük olmalıdır.

iCount
Liste görünümü denetimindeki sütun sayısı. Bu parametre -1 ise, sütun sayısı çerçeve tarafından otomatik olarak alınır.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Açıklamalar

Bu üye işlevi, ListView_GetColumnOrderArrayWindows SDK'da açıklandığı gibi Win32 makrosunun davranışını uygular.

Örnek

// Reverse the order of the columns in the list view control
// (i.e. make the first column the last, the last column
// the first, and so on...).
CHeaderCtrl* pHeaderCtrl = m_myListCtrl.GetHeaderCtrl();

if (pHeaderCtrl != NULL)
{
    int  nColumnCount = pHeaderCtrl->GetItemCount();
    LPINT pnOrder = (LPINT) malloc(nColumnCount*sizeof(int));
    ASSERT(pnOrder != NULL);
    m_myListCtrl.GetColumnOrderArray(pnOrder, nColumnCount);

    int i, j, nTemp;
    for (i = 0, j = nColumnCount-1; i < j; i++, j--)
    {
        nTemp = pnOrder[i];
        pnOrder[i] = pnOrder[j];
        pnOrder[j] = nTemp;
    }

    m_myListCtrl.SetColumnOrderArray(nColumnCount, pnOrder);
    free(pnOrder);
}

CListCtrl::GetColumnWidth

Rapor görünümünde veya liste görünümünde bir sütunun genişliğini alır.

int GetColumnWidth(int nCol) const;

Parametreler

nCol
Genişliği alınacak sütunun dizinini belirtir.

Dönüş Değeri

tarafından nColbelirtilen sütunun piksel cinsinden genişliği.

Örnek

// Increase the column width of the second column by 20.
int nWidth = m_myListCtrl.GetColumnWidth(1);
m_myListCtrl.SetColumnWidth(1, 20 + nWidth);

CListCtrl::GetCountPerPage

Liste görünümünde veya rapor görünümündeyken, liste görünümü denetiminin görünür alanına dikey olarak sığabilecek öğe sayısını hesaplar.

int GetCountPerPage() const;

Dönüş Değeri

Liste görünümünde veya rapor görünümündeyken liste görünümü denetiminin görünür alanına dikey olarak sığabilen öğe sayısı.

Örnek

örneğine CListCtrl::GetTopIndexbakın.

CListCtrl::GetEditControl

Liste görünümü öğesinin metnini düzenlemek için kullanılan düzenleme denetiminin tutamacını alır.

CEdit* GetEditControl() const;

Dönüş Değeri

Başarılı olursa, öğe metnini düzenlemek için CEdit kullanılan nesneye bir işaretçi; aksi takdirde NULL.

Örnek

// The string replacing the text in the edit control.
LPCTSTR lpszmyString = _T("custom label!");

// If possible, replace the text in the label edit control.
CEdit* pEdit = m_myListCtrl.GetEditControl();

if (pEdit != NULL)
{
    pEdit->SetWindowText(lpszmyString);
}

CListCtrl::GetEmptyText

Geçerli liste görünümü denetimi boşsa görüntülenecek dizeyi alır.

CString GetEmptyText() const;

Dönüş Değeri

CString Denetim boşsa görüntülenecek metni içeren bir.

Açıklamalar

Bu yöntem, Windows SDK'sında açıklanan iletiyi gönderir LVM_GETEMPTYTEXT .

CListCtrl::GetExtendedStyle

Liste görünümü denetiminin geçerli genişletilmiş stillerini alır.

DWORD GetExtendedStyle();

Dönüş Değeri

Liste görünümü denetimi tarafından kullanılmakta olan genişletilmiş stillerin birleşimi. Bu genişletilmiş stillerin açıklayıcı listesi için Windows SDK'sında Genişletilmiş Liste Görünümü Stilleri makalesine bakın.

Açıklamalar

Bu üye işlevi, ListView_GetExtendedListViewStyleWindows SDK'da açıklandığı gibi Win32 makrosunun davranışını uygular.

Örnek

örneğine CListCtrl::SetExtendedStylebakın.

CListCtrl::GetFirstSelectedItemPosition

Liste görünümü denetiminde seçilen ilk öğenin konumunu alır.

POSITION GetFirstSelectedItemPosition() const;

Dönüş Değeri

Hiçbir POSITION öğe seçilmediyse yineleme NULL veya nesne işaretçisi alma için kullanılabilecek bir değer.

Örnek

Aşağıdaki kod örneği bu işlevin kullanımını gösterir.

POSITION pos = m_myListCtrl.GetFirstSelectedItemPosition();
if (pos == NULL)
{
    TRACE(_T("No items were selected!\n"));
}
else
{
    while (pos)
    {
        int nItem = m_myListCtrl.GetNextSelectedItem(pos);
        TRACE(_T("Item %d was selected!\n"), nItem);
        // you could do your own processing on nItem here
    }
}

CListCtrl::GetFocusedGroup

Geçerli liste görünümü denetiminde klavye odağı olan grubu alır.

int GetFocusedGroup() const;

Dönüş Değeri

Böyle bir grup varsa, durumu LVGS_FOCUSEDolan grubun dizini; aksi takdirde -1.

Açıklamalar

Bu yöntem, Windows SDK'sında açıklanan iletiyi gönderir LVM_GETFOCUSEDGROUP . Daha fazla bilgi için yapı üyesinin state LVGROUP değerine bakınLVGS_FOCUSED.

CListCtrl::GetGroupCount

Geçerli liste görünümü denetimindeki grup sayısını alır.

int GetGroupCount()const;

Dönüş Değeri

Liste görünümü denetimindeki grup sayısı.

Açıklamalar

Bu yöntem, Windows SDK'sında açıklanan iletiyi gönderir LVM_GETGROUPCOUNT --> .

CListCtrl::GetGroupInfo

Liste görünümü denetiminin belirtilen grubunun bilgilerini alır.

int GetGroupInfo(
    int iGroupId,
    PLVGROUP pgrp) const;

Parametreler

iGroupId
Bilgileri alınacak grubun tanımlayıcısı.

pgrp
Belirtilen gruptaki LVGROUP bilgileri içeren işaretçi.

Dönüş Değeri

Başarılı olursa grubun kimliğini veya aksi takdirde -1 değerini döndürür.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_GETGROUPINFO işlevselliğine öykünmektedir.

CListCtrl::GetGroupInfoByIndex

Geçerli liste görünümü denetiminde belirtilen grup hakkındaki bilgileri alır.

BOOL GetGroupInfoByIndex(
    int iIndex,
    PLVGROUP pGroup) const;

Parametreler

iIndex
[in] Bir grubun sıfır tabanlı dizini.

pGroup
[out] iIndex parametresi tarafından belirtilen grup hakkında bilgi alan bir LVGROUP yapısının işaretçisi. Çağıran, LVGROUP yapısının üyelerini başlatmakla sorumludur. Üyeyi cbSize yapının boyutuna ve alınacak bilgileri belirtmek için üyenin bayraklarına mask ayarlayın.

Dönüş Değeri

TRUE bu yöntem başarılı olursa; aksi takdirde , FALSE.

Açıklamalar

Bu yöntem, Windows SDK'sında açıklanan iletiyi gönderir LVM_GETGROUPINFOBYINDEX --> .

Örnek

İlk kod örneği, m_listCtrlgeçerli liste görünümü denetimine erişmek için kullanılan bir değişkeni tanımlar. Bu değişken sonraki örnekte kullanılır.

public:
    // Variable used to access the list control.
    CListCtrl m_listCtrl;

Sonraki kod örneği yöntemini gösterir GetGroupInfoByIndex . Bu kod örneğinin önceki bir bölümünde, rapor görünümünde "ClientID" ve "Grade" başlıklı iki sütunu görüntüleyen bir liste görünümü denetimi oluşturduk. Aşağıdaki kod örneği, böyle bir grup varsa dizini 0 olan grup hakkındaki bilgileri alır.

// GetGroupInfoByIndex
const int GROUP_HEADER_BUFFER_SIZE = 40;

// Initialize the structure
LVGROUP gInfo = {0};
gInfo.cbSize = sizeof(LVGROUP);
wchar_t wstrHeadGet[GROUP_HEADER_BUFFER_SIZE] = {0};
gInfo.cchHeader = GROUP_HEADER_BUFFER_SIZE;
gInfo.pszHeader = wstrHeadGet;
gInfo.mask = (LVGF_ALIGN | LVGF_STATE | LVGF_HEADER | LVGF_GROUPID);
gInfo.state = LVGS_NORMAL;
gInfo.uAlign  = LVGA_HEADER_LEFT;

BOOL bRet = m_listCtrl.GetGroupInfoByIndex( 0, &gInfo );
if (bRet == TRUE) {
    CString strHeader = CString( gInfo.pszHeader );
    CString str;
    str.Format(_T("Header: '%s'"), strHeader);
    AfxMessageBox(str, MB_ICONINFORMATION);
}
else
{
    AfxMessageBox(_T("No group information was retrieved."));
}

CListCtrl::GetGroupMetrics

Bir grubun ölçümlerini alır.

void GetGroupMetrics(PLVGROUPMETRICS pGroupMetrics) const;

Parametreler

pGroupMetrics
Grup ölçümleri bilgilerini içeren bir LVGROUPMETRICS işaretçi.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_GETGROUPMETRICS işlevselliğine öykünmektedir.

CListCtrl::GetGroupRect

Geçerli liste görünümü denetiminde belirtilen bir grup için sınırlayıcı dikdörtgeni alır.

BOOL GetGroupRect(
    int iGroupId,
    LPRECT lpRect,
    int iCoords = LVGGR_GROUP) const;

Parametreler

iGroupId
[in] Bir grup belirtir.

lpRect
[in, out] Bir RECT yapı işaretçisi. Bu yöntem başarılı olursa, yapısı tarafından iGroupIdbelirtilen grubun dikdörtgen koordinatlarını alır.

iCoords
[in] Alınacak dikdörtgen koordinatlarını belirtir. Şu değerlerden birini kullanın:

  • LVGGR_GROUP - (Varsayılan) Genişletilmiş grubun tamamının koordinatları.
  • LVGGR_HEADER - Yalnızca üst bilginin koordinatları (daraltılmış grup).
  • LVGGR_SUBSETLINK - Yalnızca alt küme bağlantısının koordinatları (işaretleme alt kümesi).

Dönüş Değeri

TRUE bu yöntem başarılı olursa; aksi takdirde , FALSE.

Açıklamalar

Çağıran, parametresi tarafından işaret edilen yapıyı RECT ayırmadan pRect sorumludur.

Bu yöntem, Windows SDK'sında açıklanan iletiyi gönderir LVM_GETGROUPRECT .

Örnek

İlk kod örneği, m_listCtrlgeçerli liste görünümü denetimine erişmek için kullanılan bir değişkeni tanımlar. Bu değişken sonraki örnekte kullanılır.

public:
    // Variable used to access the list control.
    CListCtrl m_listCtrl;

Sonraki kod örneği yöntemini gösterir GetGroupRect . Bu kod örneğinin önceki bir bölümünde, rapor görünümünde "ClientID" ve "Grade" başlıklı iki sütunu görüntüleyen bir liste görünümü denetimi oluşturduk. Aşağıdaki kod örneği, böyle bir grup varsa dizini 0 olan grubun etrafına bir 3B dikdörtgen çizer.

// GetGroupRect

// Get the graphics rectangle that surrounds group 0.
CRect rect;
BOOL bRet = m_listCtrl.GetGroupRect( 0, &rect, LVGGR_GROUP);
// Draw a blue rectangle around group 0.
if (bRet == TRUE) {
    m_listCtrl.GetDC()->Draw3dRect( &rect, RGB(0, 0, 255), RGB(0, 0, 255));
}
else {
    AfxMessageBox(_T("No group information was retrieved."), MB_ICONINFORMATION);
}

CListCtrl::GetGroupState

Geçerli liste görünümü denetiminde belirtilen grubun durumunu alır.

UINT GetGroupState(
    int iGroupId,
    DWORD dwMask) const;

Parametreler

iGroupId
[in] Bir grubun sıfır tabanlı dizini.

dwMask
[in] Belirtilen grup için alınacak durum değerini belirten maske. Daha fazla bilgi için yapının üyesine LVGROUP bakınmask.

Dönüş Değeri

Belirtilen grup için istenen durum veya grup bulunamazsa 0.

Açıklamalar

Dönüş değeri, parametredeki dwMask bit düzeyinde AND işleminin ve geçerli liste görünümü denetimini temsil eden bir LVGROUP yapının üyesinin değerinin state sonucudur.

Bu yöntem, Windows SDK'sında açıklanan iletiyi gönderir LVM_GETGROUPSTATE . Daha fazla bilgi için makroya ListView_GetGroupState bakın.

CListCtrl::GetHeaderCtrl

Liste görünümü denetiminin üst bilgi denetimini alır.

CHeaderCtrl* GetHeaderCtrl();

Dönüş Değeri

Liste görünümü denetimi tarafından kullanılan üst bilgi denetiminin işaretçisi.

Açıklamalar

Bu üye işlevi, ListView_GetHeaderWindows SDK'da açıklandığı gibi Win32 makrosunun davranışını uygular.

Örnek

örneğine CListCtrl::GetColumnOrderArraybakın.

CListCtrl::GetHotCursor

Liste görünümü denetimi için etkin izleme etkinleştirildiğinde kullanılan imleci alır.

HCURSOR GetHotCursor();

Dönüş Değeri

Liste görünümü denetimi tarafından kullanılan geçerli sık erişimli imleç kaynağının tutamacı.

Açıklamalar

Bu üye işlevi, ListView_GetHotCursorWindows SDK'da açıklandığı gibi Win32 makrosunun davranışını uygular. Yalnızca vurgulama seçimi etkinleştirildiğinde görünen etkin imleç, imleç herhangi bir liste görünümü öğesinin üzerinden geçtiğinde görünür. LVS_EX_TRACKSELECT genişletilmiş stil ayarlanarak vurgu seçimi etkinleştirilir.

Örnek

// Set the hot cursor to be the system app starting cursor.
HCURSOR hCursor = ::LoadCursor(NULL, IDC_APPSTARTING);
m_myListCtrl.SetHotCursor(hCursor);
ASSERT(m_myListCtrl.GetHotCursor() == hCursor);

CListCtrl::GetHotItem

İmlecin altında bulunan liste görünümü öğesini alır.

int GetHotItem();

Dönüş Değeri

Liste görünümü denetiminin geçerli sık erişimli öğesinin dizini.

Açıklamalar

Bu üye işlevi, ListView_GetHotItemWindows SDK'da açıklandığı gibi Win32 makrosunun davranışını uygular. Sık erişimli öğe, etkin izleme (ve vurgulama seçimi) etkinleştirildiğinde seçili durumdaki öğe olarak tanımlanır.

Etkin izleme etkinse, kullanıcı liste görünümü öğesinin üzerinde durakladığında, fare düğmesi kullanılmadan öğe etiketi otomatik olarak vurgulanır.

Örnek

// Set the hot item to the first item only if no other item is
// highlighted.
if (m_myListCtrl.GetHotItem() == -1)
    m_myListCtrl.SetHotItem(0);

CListCtrl::GetHoverTime

Liste görünümü denetiminin geçerli vurgulama zamanını alır.

DWORD GetHoverTime() const;

Dönüş Değeri

Fare imlecinin seçilmeden önce öğenin üzerine gelmeleri gereken gecikmeyi milisaniye cinsinden döndürür. Dönüş değeri -1 ise, vurgulama süresi varsayılan vurgulama süresidir.

Açıklamalar

Bu üye işlevi, ListView_GetHoverTimeWindows SDK'da açıklandığı gibi Win32 makrosunun davranışını uygular.

Örnek

// If the hover time is the default set to 1 sec.
DWORD dwTime = m_myListCtrl.GetHoverTime();
if (dwTime == -1)
    m_myListCtrl.SetHoverTime(1000);

CListCtrl::GetImageList

Liste görünümü öğelerini çizmek için kullanılan resim listesinin tutamacını alır.

CImageList* GetImageList(int nImageList) const;

Parametreler

nImageList
Hangi görüntü listesinin alınacağını belirten değer. Bu değerlerden biri olabilir:

  • LVSIL_NORMAL Büyük simgeler içeren resim listesi.
  • LVSIL_SMALL Küçük simgeler içeren resim listesi.
  • LVSIL_STATE Durum görüntülerinin yer aldığı resim listesi.

Dönüş Değeri

Çizim listesi görünümü öğeleri için kullanılan resim listesinin işaretçisi.

Örnek

ASSERT(m_myListCtrl.GetImageList(LVSIL_NORMAL) == NULL);
m_myListCtrl.SetImageList(&m_lcImageList, LVSIL_NORMAL);
ASSERT(m_myListCtrl.GetImageList(LVSIL_NORMAL) == &m_lcImageList);

CListCtrl::GetInsertMark

Ekleme işaretinin geçerli konumunu alır.

BOOL GetInsertMark(LPLVINSERTMARK plvim) const;

Parametreler

plvim
Ekleme işaretine ilişkin bilgileri içeren bir LVINSERTMARK yapı işaretçisi.

Dönüş Değeri

Başarılı olursa veya FALSE başka bir şekilde döndürürTRUE. FALSE , yapı üyesindeki cbSize LVINSERTMARK boyut, yapının gerçek boyutuna eşit değilse döndürülür.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_GETINSERTMARK işlevselliğine öykünmektedir.

CListCtrl::GetInsertMarkColor

Ekleme işaretinin geçerli rengini alır.

COLORREF GetInsertMarkColor() const;

Dönüş Değeri

Ekleme noktasının rengini içeren bir COLORREF yapı döndürür.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_GETINSERTMARKCOLOR işlevselliğine öykünmektedir.

CListCtrl::GetInsertMarkRect

Ekleme noktasını sınırlayan dikdörtgeni alır.

int GetInsertMarkRect(LPRECT pRect) const;

Parametreler

pRect
Ekleme noktasını sınırlayan bir RECT dikdörtgenin koordinatlarını içeren bir yapıya yönelik işaretçi.

Dönüş Değeri

Aşağıdaki değerlerden birini döndürür:

  • 0 Ekleme noktası bulunamadı.
  • 1 Ekleme noktası bulundu.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_GETINSERTMARKRECT işlevselliğine öykünmektedir.

CListCtrl::GetItem

Liste görünümü öğesinin özniteliklerinin bazılarını veya tümünü alır.

BOOL GetItem(LVITEM* pItem) const;

Parametreler

pItem
Öğenin özniteliklerini alan bir LVITEM yapıya yönelik işaretçi.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Açıklamalar

Yapı, LVITEM liste görünümü öğesinin özniteliklerini belirtir veya alır.

CListCtrl::GetItemCount

Liste görünümü denetimindeki öğe sayısını alır.

int GetItemCount() const;

Dönüş Değeri

Liste görünümü denetimindeki öğe sayısı.

Örnek

örneğine CListCtrl::DeleteItembakın.

CListCtrl::GetItemData

tarafından nItembelirtilen öğeyle ilişkilendirilmiş 32 bit uygulamaya özgü değeri (x64 için derleniyorsanız 64 bit) alır.

DWORD_PTR GetItemData(int nItem) const;

Parametreler

nItem
Verileri alınacak olan liste öğesinin dizini.

Dönüş Değeri

Belirtilen öğeyle ilişkilendirilmiş 32 bit (x64 için derleniyorsanız 64 bit) uygulamaya özgü bir değer.

Açıklamalar

Bu değer, Windows SDK'da açıklandığı gibi yapının üyesidir lParam LVITEM

Örnek

// If any item's data is equal to zero then reset it to -1.
for (int i=0; i < m_myListCtrl.GetItemCount(); i++)
{
    if (m_myListCtrl.GetItemData(i) == 0)
    {
        m_myListCtrl.SetItemData(i, (DWORD) -1);
    }
}

CListCtrl::GetItemIndexRect

Geçerli liste görünümü denetimindeki bir alt öğenin tümü veya bir bölümü için sınırlayıcı dikdörtgeni alır.

BOOL GetItemIndexRect(
    PLVITEMINDEX pItemIndex,
    int iColumn,
    int rectType,
    LPRECT pRect) const;

Parametreler

pItemIndex
[in] Alt öğenin üst öğesi için bir LVITEMINDEX yapı işaretçisi. Çağıran, yapı üyelerini LVITEMINDEX ayırma ve ayarlamadan sorumludur. Bu parametre olamaz NULL.

iColumn
[in] Denetimdeki bir sütunun sıfır tabanlı dizini.

rectType
[in] Sınırlayıcı dikdörtgenin alındığı liste görünümü alt öğesinin bir bölümü. Aşağıdaki değerlerden birini belirtin:

  • LVIR_BOUNDS - Simge ve etiket de dahil olmak üzere tüm alt dizinin sınırlayıcı dikdörtgenini döndürür.
  • LVIR_ICON - Simgenin sınırlayıcı dikdörtgenini veya alt öğesinin küçük simgesini döndürür.
  • LVIR_LABEL - Alt öğe metninin sınırlayıcı dikdörtgenini döndürür.

pRect
[out] Alt öğesinin sınırlayıcı dikdörtgeni hakkında bilgi alan bir RECT yapı işaretçisi. Çağıran, yapıyı ayırmadan RECT sorumludur. Bu parametre olamaz NULL.

Dönüş Değeri

TRUE bu yöntem başarılı olursa; aksi takdirde , FALSE.

Açıklamalar

Bu yöntem, Windows SDK'sında açıklanan iletiyi gönderir LVM_GETITEMINDEXRECT . Daha fazla bilgi için bkz ListView_GetItemIndexRect . Makro.

Örnek

İlk kod örneği, m_listCtrlgeçerli liste görünümü denetimine erişmek için kullanılan bir değişkeni tanımlar. Bu değişken sonraki örnekte kullanılır.

public:
    // Variable used to access the list control.
    CListCtrl m_listCtrl;

Sonraki kod örneği yöntemini gösterir GetGroupRect . Bu kod örneğini girmeden önce, rapor görünümünde "ClientID" ve "Grade" başlıklı iki sütunu görüntüleyen bir liste görünümü denetimi oluşturduk. Aşağıdaki kod örneği her iki sütunda da ikinci alt dizinin etrafına bir 3B dikdörtgen çizer.

// GetItemIndexRect
// Get the rectangle that bounds the second item in the first group.
LVITEMINDEX lvItemIndex;
lvItemIndex.iGroup = 0;
lvItemIndex.iItem = 1;
CRect rect;
BOOL bRet = m_listCtrl.GetItemIndexRect(
    &lvItemIndex, 0, LVIR_BOUNDS, &rect);

// Draw a red rectangle around the item.
m_listCtrl.GetDC()->Draw3dRect( &rect, RGB(255, 0, 0), RGB(255, 0, 0) );

CListCtrl::GetItemPosition

Liste görünümü öğesinin konumunu alır.

BOOL GetItemPosition(
    int nItem,
    LPPOINT lpPoint) const;

Parametreler

nItem
Konumu alınacak öğenin dizini.

lpPoint
Öğenin sol üst köşesinin konumunu görünüm koordinatlarında alan bir POINT yapının adresi.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Örnek

POINT pt;

// Move all items in the list control 100 pixels to the right.
UINT i, nCount = m_myListCtrl.GetItemCount();

for (i=0; i < nCount; i++)
{
    m_myListCtrl.GetItemPosition(i, &pt);
    pt.x += 100;
    m_myListCtrl.SetItemPosition(i, pt);
}

CListCtrl::GetItemRect

Geçerli görünümdeki bir öğenin tümü veya bir bölümü için sınırlayıcı dikdörtgeni alır.

BOOL GetItemRect(
    int nItem,
    LPRECT lpRect,
    UINT nCode) const;

Parametreler

nItem
Konumu alınacak öğenin dizini.

lpRect
Sınırlayıcı dikdörtgeni alan bir RECT yapının adresi.

nCode
Sınırlayıcı dikdörtgenin alındığı liste görünümü öğesinin bir bölümü. Bu değerlerden biri olabilir:

  • LVIR_BOUNDS Simge ve etiket de dahil olmak üzere tüm öğenin sınırlayıcı dikdörtgenini döndürür.
  • LVIR_ICON Simgenin veya küçük simgenin sınırlayıcı dikdörtgenini döndürür.
  • LVIR_LABEL Öğe metninin sınırlayıcı dikdörtgenini döndürür.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Örnek

// OnClick is the handler for the NM_CLICK notification
void CListCtrlDlg::OnClick(NMHDR* pNMHDR, LRESULT* pResult)
{
    UNREFERENCED_PARAMETER(pResult);
    LPNMITEMACTIVATE pia = (LPNMITEMACTIVATE)pNMHDR;

    // Get the current mouse location and convert it to client
    // coordinates.
    CPoint pos( ::GetMessagePos() );
    ScreenToClient(&pos);

    // Get indexes of the first and last visible items in
    // the listview control.
    int index = m_myListCtrl.GetTopIndex();
    int last_visible_index = index + m_myListCtrl.GetCountPerPage();
    if (last_visible_index > m_myListCtrl.GetItemCount())
        last_visible_index = m_myListCtrl.GetItemCount();

    // Loop until number visible items has been reached.
    while (index <= last_visible_index)
    {
        // Get the bounding rectangle of an item. If the mouse
        // location is within the bounding rectangle of the item,
        // you know you have found the item that was being clicked.
        CRect r;
        m_myListCtrl.GetItemRect(index, &r, LVIR_BOUNDS);
        if (r.PtInRect(pia->ptAction))
        {
            UINT flag = LVIS_SELECTED | LVIS_FOCUSED;
            m_myListCtrl.SetItemState(index, flag, flag);
            break;
        }

        // Get the next item in listview control.
        index++;
    }
}

CListCtrl::GetItemSpacing

Geçerli liste görünümü denetimindeki öğeler arasındaki aralığı hesaplar.

BOOL GetItemSpacing(
    BOOL fSmall,
    int* pnHorzSpacing,
    int* pnVertSpacing) const;

Parametreler

fSmall
[in] Öğe aralığının alındığı görünüm. Küçük simge görünümü veya FALSE simge görünümü için belirtinTRUE.

pnHorzSpacing
[out] Öğeler arasındaki yatay aralığı içerir.

pnVertSpacing
[out] Öğeler arasındaki dikey aralığı içerir.

Dönüş Değeri

TRUE bu yöntem başarılı olursa; aksi takdirde , FALSE.

Açıklamalar

Bu yöntem, Windows SDK'sında açıklanan iletiyi gönderir LVM_GETITEMSPACING .

CListCtrl::GetItemState

Liste görünümü öğesinin durumunu alır.

UINT GetItemState(
    int nItem,
    UINT nMask) const;

Parametreler

nItem
Durumu alınacak öğenin dizini.

nMask
Öğenin durum bayraklarından hangilerinin döndürüleceğini belirten maske.

Dönüş Değeri

Belirtilen liste görünümü öğesi için durum bayrakları.

Açıklamalar

Bir öğenin durumu, Windows SDK'da açıklandığı gibi yapının üyesi LVITEM tarafından state belirtilir. Bir öğenin durumunu belirttiğinizde veya değiştirdiğinizde, stateMask üye hangi durum bitlerini değiştirmek istediğinizi belirtir.

Örnek

örneğine CListCtrl::GetTopIndexbakın.

CListCtrl::GetItemText

Liste görünümü öğesinin veya alt öğesinin metnini alır.

int GetItemText(
    int nItem,
    int nSubItem,
    LPTSTR lpszText,
    int nLen) const;

CString GetItemText(
    int nItem,
    int nSubItem) const;

Parametreler

nItem
Metni alınacak öğenin dizini.

nSubItem
Metni alınacak alt öğesini belirtir.

lpszText
Öğe metnini almak için bir dize işaretçisi.

nLen
tarafından lpszTextişaret edilen arabellek uzunluğu.

Dönüş Değeri

Döndürülen int sürüm, alınan dizenin uzunluğunu döndürür.

Bir döndüren CString sürüm, öğe metnini döndürür.

Açıklamalar

Sıfır ise nSubItem , bu işlev öğe etiketini alır; nSubItem sıfır değilse, alt öğenin metnini alır. Subitem bağımsız değişkeni hakkında daha fazla bilgi için Windows SDK'sı yapısına ilişkin tartışmalara LVITEM bakın.

CListCtrl::GetNextItem

Belirtilen özelliklere sahip olan ve belirli bir öğeyle belirtilen ilişkiyi taşıyan liste görünümü öğesini arar.

int GetNextItem(
    int nItem,
    int nFlags) const;

Parametreler

nItem
Aramaya başlanması gereken öğenin dizini veya belirtilen bayraklarla eşleşen ilk öğeyi bulmak için -1. Belirtilen öğenin kendisi aramanın dışında tutulur.

nFlags
İstenen öğenin belirtilen öğeyle geometrik ilişkisi ve istenen öğenin durumu. Geometrik ilişki şu değerlerden biri olabilir:

  • LVNI_ABOVE Belirtilen öğenin üzerinde olan bir öğeyi arar.
  • LVNI_ALL Sonraki bir öğeyi dizine göre (varsayılan değer) arar.
  • LVNI_BELOW Belirtilen öğenin altında bir öğeyi arar.
  • LVNI_TOLEFT Belirtilen öğenin solundaki bir öğeyi arar.
  • LVNI_TORIGHT Belirtilen öğenin sağındaki bir öğeyi arar.

Durum sıfır veya şu değerlerden biri veya daha fazlası olabilir:

  • LVNI_DROPHILITED Öğede LVIS_DROPHILITED durum bayrağı ayarlanmıştır.
  • LVNI_FOCUSED Öğede LVIS_FOCUSED durum bayrağı ayarlanmıştır.
  • LVNI_SELECTED Öğede LVIS_SELECTED durum bayrağı ayarlanmıştır.

Bir öğede belirtilen durum bayraklarının tümü ayarlı değilse, arama sonraki öğeyle devam eder.

Dönüş Değeri

Başarılı olursa sonraki öğenin dizini veya aksi takdirde -1.

CListCtrl::GetNextItemIndex

Geçerli liste görünümü denetiminde belirtilen özellik kümesine sahip öğenin dizinini alır.

BOOL GetNextItemIndex(
    PLVITEMINDEX pItemIndex,
    int nFlags) const;

Parametreler

pItemIndex
[in, out] Aramanın LVITEMINDEX başladığı öğeyi açıklayan yapı işaretçisi veya nFlags parametresindeki bayraklarla eşleşen ilk öğeyi bulmak için -1. Bu yöntem başarılı olursa, LVITEMINDEX yapı arama tarafından bulunan öğeyi açıklar.

nFlags
[in] Aramanın nasıl gerçekleştirileceğini belirten bit düzeyinde bir bayrak bileşimi (VEYA). Arama, hedef öğenin dizinine, durumuna veya görünümüne ya da hedef öğenin parametre tarafından belirtilen öğeye göre fiziksel konumuna pItemIndex bağlı olabilir. Daha fazla bilgi için iletideki flags parametresine LVM_GETNEXTITEMINDEX bakın.

Dönüş Değeri

TRUE bu yöntem başarılı olursa; aksi takdirde , FALSE.

Açıklamalar

Çağıran, parametresi tarafından işaret edilen yapı üyelerini LVITEMINDEX ayırma ve ayarlamadan pItemIndex sorumludur.

Bu yöntem, Windows SDK'sında açıklanan iletiyi gönderir LVM_GETNEXTITEMINDEX .

CListCtrl::GetNextSelectedItem

tarafından postanımlanan liste öğesinin dizinini alır ve POSITION değerine ayarlar pos .

int GetNextSelectedItem(POSITION& pos) const;

Parametreler

pos
veya önceki bir çağrısı GetNextSelectedItem GetFirstSelectedItemPositiontarafından döndürülen POSITION değerine başvuru. Değer, bu çağrı tarafından bir sonraki konuma güncelleştirilir.

Dönüş Değeri

tarafından postanımlanan liste öğesinin dizini.

Açıklamalar

çağrısıyla GetFirstSelectedItemPositionilk konumu belirlerseniz, bir iletme yineleme döngüsünde kullanabilirsinizGetNextSelectedItem.

Değerinizin POSITION geçerli olduğundan emin olmanız gerekir. Geçersizse, Microsoft Foundation Sınıf Kitaplığı'nın Hata Ayıklama sürümü onaylar.

Örnek

Aşağıdaki kod örneği bu işlevin kullanımını gösterir.

POSITION pos = m_myListCtrl.GetFirstSelectedItemPosition();
if (pos == NULL)
{
    TRACE(_T("No items were selected!\n"));
}
else
{
    while (pos)
    {
        int nItem = m_myListCtrl.GetNextSelectedItem(pos);
        TRACE(_T("Item %d was selected!\n"), nItem);
        // you could do your own processing on nItem here
    }
}

CListCtrl::GetNumberOfWorkAreas

Liste görünümü denetimi için geçerli çalışma alanı sayısını alır.

UINT GetNumberOfWorkAreas() const;

Dönüş Değeri

Şu anda kullanılmıyor.

Açıklamalar

Bu üye işlevi, ListView_GetNumberOfWorkAreasWindows SDK'da açıklandığı gibi Win32 makrosunun davranışını uygular.

Örnek

UINT i, uCount = m_myListCtrl.GetNumberOfWorkAreas();
LPRECT lpRects = (LPRECT) malloc(uCount*sizeof(RECT));

if (lpRects != NULL)
{
    // Dump all of the work area dimensions.
    m_myListCtrl.GetWorkAreas(uCount, lpRects);

    for (i=0; i < uCount; i++)
    {
        TRACE(_T("Work area %d; left = %d, top = %d, right = %d, ")
            _T("bottom = %d\r\n"),
            i, lpRects[i].left, lpRects[i].top, lpRects[i].right,
            lpRects[i].bottom);
    }

    free(lpRects);
}
else
{
    TRACE(_T("Couldn't allocate enough memory!"));
}

CListCtrl::GetOutlineColor

Liste görünümü denetiminin kenarlığı rengini alır.

COLORREF GetOutlineColor() const;

Dönüş Değeri

Ana hat rengini içeren bir COLORREF yapı döndürür.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_GETOUTLINECOLOR işlevselliğine öykünmektedir.

CListCtrl::GetOrigin

Liste görünümü denetimi için geçerli görünüm kaynağını alır.

BOOL GetOrigin(LPPOINT lpPoint) const;

Parametreler

lpPoint
Görünüm kaynağını alan bir POINT yapının adresi.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır. Ancak, denetim rapor görünümündeyse, dönüş değeri her zaman sıfırdır.

CListCtrl::GetSelectedColumn

Liste denetiminde seçili durumdaki sütunun dizinini alır.

UINT GetSelectedColumn() const;

Dönüş Değeri

Seçili sütunun dizini.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_GETSELECTEDCOLUMN işlevselliğine öykünmektedir.

CListCtrl::GetSelectedCount

Liste görünümü denetimindeki seçili öğelerin sayısını alır.

UINT GetSelectedCount() const;

Dönüş Değeri

Liste görünümü denetimindeki seçili öğelerin sayısı.

Örnek

UINT i, uSelectedCount = m_myListCtrl.GetSelectedCount();
int  nItem = -1;

// Update all of the selected items.
if (uSelectedCount > 0)
{
    for (i=0; i < uSelectedCount; i++)
    {
        nItem = m_myListCtrl.GetNextItem(nItem, LVNI_SELECTED);
        ASSERT(nItem != -1);
        m_myListCtrl.Update(nItem);
    }
}

CListCtrl::GetSelectionMark

Liste görünümü denetiminin seçim işaretini alır.

int GetSelectionMark();

Dönüş Değeri

Sıfır tabanlı seçim işareti veya seçim işareti yoksa -1.

Açıklamalar

Bu üye işlevi, ListView_GetSelectionMarkWindows SDK'da açıklandığı gibi Win32 makrosunun davranışını uygular.

Örnek

// Set the selection mark to the first item only if no other item is
// selected.
if (m_myListCtrl.GetSelectionMark() == -1)
    m_myListCtrl.SetSelectionMark(0);

CListCtrl::GetStringWidth

Belirli bir dizenin tümünü görüntülemek için gereken en düşük sütun genişliğini belirler.

int GetStringWidth(LPCTSTR lpsz) const;

Parametreler

lpsz
Genişliği belirlenecek null olarak sonlandırılan dizenin adresi.

Dönüş Değeri

tarafından lpszişaret edilen dizenin piksel cinsinden genişliği.

Açıklamalar

Döndürülen genişlik, denetimin geçerli yazı tipini ve sütun kenar boşluklarını dikkate alır, ancak küçük bir simgenin genişliğini dikkate almaz.

Örnek

CString strColumn;
int nWidth;

// Insert six columns in the list view control. Make the width of
// the column be the width of the column header plus 50%.
for (int i = 0; i < 6; i++)
{
    strColumn.Format(_T("column %d"), i);
    nWidth = 3*m_myListCtrl.GetStringWidth(strColumn)/2;
    m_myListCtrl.InsertColumn(i, strColumn, LVCFMT_LEFT, nWidth);
}

CListCtrl::GetSubItemRect

Liste görünümü denetimindeki bir öğenin sınırlayıcı dikdörtgenini alır.

BOOL GetSubItemRect(
    int iItem,
    int iSubItem,
    int nArea,
    CRect& ref);

Parametreler

iItem
Alt öğenin üst öğesinin dizini.

iSubItem
Alt öğesinin tek tabanlı dizini.

nArea
Alınacak sınırlayıcı dikdörtgenin (liste görünümü alt öğesi) bölümünü belirler. Sınırlayıcı dikdörtgenin bölümü (simge, etiket veya her ikisi) aşağıdaki değerlerden birine veya daha fazlasına bit düzeyinde OR işleç uygulanarak belirtilir:

  • LVIR_BOUNDS Simge ve etiket de dahil olmak üzere tüm öğenin sınırlayıcı dikdörtgenini döndürür.
  • LVIR_ICON Simgenin veya küçük simgenin sınırlayıcı dikdörtgenini döndürür.
  • LVIR_LABEL Simge ve etiket de dahil olmak üzere tüm öğenin sınırlayıcı dikdörtgenini döndürür. Bu, ile LVIR_BOUNDSaynıdır.

ref
Alt dizinin sınırlayıcı dikdörtgeninin koordinatlarını içeren bir CRect nesneye başvuru.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Açıklamalar

Bu üye işlevi, ListView_GetSubItemRectWindows SDK'da açıklandığı gibi Win32 makrosunun davranışını uygular.

CListCtrl::GetTextBkColor

Liste görünümü denetiminin metin arka plan rengini alır.

COLORREF GetTextBkColor() const;

Dönüş Değeri

RGB rengi belirtmek için kullanılan 32 bit değer.

Örnek

örneğine CListCtrl::SetTextBkColorbakın.

CListCtrl::GetTextColor

Liste görünümü denetiminin metin rengini alır.

COLORREF GetTextColor() const;

Dönüş Değeri

RGB rengi belirtmek için kullanılan 32 bit değer.

Örnek

örneğine CListCtrl::SetTextColorbakın.

CListCtrl::GetTileInfo

Liste görünümü denetimindeki bir kutucuk hakkındaki bilgileri alır.

BOOL GetTileInfo(PLVTILEINFO plvti) const;

Parametreler

plvti
Kutucuk bilgilerini alan bir LVTILEINFO yapı işaretçisi.

Dönüş Değeri

Dönüş değeri kullanılmaz.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_GETTILEINFO işlevselliğine öykünmektedir.

CListCtrl::GetTileViewInfo

Kutucuk görünümünde liste görünümü denetimi hakkındaki bilgileri alır.

BOOL GetTileViewInfo(PLVTILEVIEWINFO ptvi) const;

Parametreler

ptvi
Alınan bilgileri alan bir LVTILEVIEWINFO yapı işaretçisi.

Dönüş Değeri

Dönüş değeri kullanılmaz.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_GETTILEVIEWINFO işlevselliğine öykünmektedir.

CListCtrl::GetToolTips

Liste görünümü denetiminin araç ipuçlarını görüntülemek için kullandığı araç ipucu denetimini alır.

CToolTipCtrl* GetToolTips() const;

Dönüş Değeri

Liste denetimi tarafından kullanılacak nesne CToolTipCtrl işaretçisi. Create Üye işlevi stilini LVS_NOTOOLTIPSkullanıyorsa, hiçbir araç ipucu kullanılmaz ve NULL döndürülür.

Açıklamalar

Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 iletisinin LVM_GETTOOLTIPSdavranışını uygular. MFC uygulaması GetToolTips , araç CToolTipCtrl ipucu denetiminin tutamacı yerine liste denetimi tarafından kullanılan bir nesnesi döndürür.

Örnek

CToolTipCtrl* pTip = m_myListCtrl.GetToolTips();
if (NULL != pTip)
{
    pTip->UpdateTipText(_T("I'm a list view!"), &m_myListCtrl,
        IDD_MYLISTCTRL);
}

CListCtrl::GetTopIndex

Liste görünümünde veya rapor görünümündeyken en üstteki görünür öğenin dizinini alır.

int GetTopIndex() const;

Dönüş Değeri

En üstteki görünür öğenin dizini.

Örnek

// Make sure the focus is set to the list view control.
m_myListCtrl.SetFocus();

// Select all of the items that are completely visible.
int n = m_myListCtrl.GetTopIndex();
int nLast = n + m_myListCtrl.GetCountPerPage();

for (; n < nLast; n++)
{
    m_myListCtrl.SetItemState(n, LVIS_SELECTED, LVIS_SELECTED);
    ASSERT(m_myListCtrl.GetItemState(n, LVIS_SELECTED) == LVIS_SELECTED);
}

CListCtrl::GetView

Liste görünümü denetiminin görünümünü alır.

DWORD GetView() const;

Dönüş Değeri

Liste görünümü denetiminin geçerli görünümü.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_GETVIEW işlevselliğine öykünmektedir.

CListCtrl::GetViewRect

Liste görünümü denetimindeki tüm öğelerin sınırlayıcı dikdörtgenini alır.

BOOL GetViewRect(LPRECT lpRect) const;

Parametreler

lpRect
Bir RECT yapının adresi.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Açıklamalar

Liste görünümü simge görünümünde veya küçük simge görünümünde olmalıdır.

CListCtrl::GetWorkAreas

Liste görünümü denetiminin geçerli çalışma alanlarını alır.

void GetWorkAreas(
    int nWorkAreas,
    LPRECT pRect) const;

Parametreler

nWorkAreas
Dizide yer alan yapıların pRect sayısıRECT.

pRect
Liste görünümü denetiminin RECT çalışma alanlarını alan bir yapı dizisinin (veya CRect nesnelerin) işaretçisi. Bu yapılardaki değerler istemci koordinatlarındadır.

Açıklamalar

Bu üye işlevi, ListView_GetWorkAreasWindows SDK'da açıklandığı gibi Win32 makrosunun davranışını uygular.

Örnek

örneğine CListCtrl::GetNumberOfWorkAreasbakın.

CListCtrl::HasGroup

Liste görünümü denetiminin belirtilen gruba sahip olup olmadığını belirler.

BOOL HasGroup(int iGroupId) const;

Parametreler

iGroupId
İstenen grubun tanımlayıcısı.

Dönüş Değeri

Başarılı olduğunda, FALSE başarısız olduğunda döndürürTRUE.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_HASGROUP işlevselliğine öykünmektedir.

CListCtrl::HitTest

Varsa, hangi liste görünümü öğesinin belirtilen konumda olduğunu belirler.

int HitTest(LVHITTESTINFO* pHitTestInfo) const;

int HitTest(
    CPoint pt,
    UINT* pFlags = NULL) const;

Parametreler

pHitTestInfo
Teste isabet etme konumunu içeren ve isabet testinin sonuçları hakkında bilgi alan bir LVHITTESTINFO yapının adresi.

pt
Test edilecek nokta.

pFlags
Testin sonuçları hakkında bilgi alan bir tamsayı işaretçisi. Windows SDK'sında flags yapı üyesinin LVHITTESTINFO açıklamasına bakın.

Dönüş Değeri

Öğenin, varsa tarafından pHitTestInfobelirtilen konumdaki dizini veya başka bir şekilde -1.

Açıklamalar

Bir liste görünümü denetiminin LVHT_ABOVEiçeriğini kaydırmak isteyip istemediğinizi belirlemek için yapı flag üyesinin , LVHT_BELOW, LVHT_TOLEFTve LVHT_TORIGHT değerlerini kullanabilirsiniz. Bu bayraklardan ikisi, örneğin konum istemci alanının üstünde ve solundaysa birleştirilebilir.

Belirli bir konumun LVHT_ONITEM liste görünümü öğesi üzerinde olup olmadığını belirlemek için yapı flag üyesinin değerini test edebilirsiniz. Bu değer, yapı üyesinin LVHT_ONITEMICON, LVHT_ONITEMLABELve LVHT_ONITEMSTATEICON değerlerinde bit düzeyinde VEYA işlemidir flag .

Örnek

void CListCtrlDlg::OnRClick(NMHDR* pNMHDR, LRESULT* pResult)
{
    LPNMITEMACTIVATE pia = (LPNMITEMACTIVATE)pNMHDR;
    CPoint point(pia->ptAction);

    // Select the item the user clicked on.
    UINT uFlags;
    int nItem = m_myListCtrl.HitTest(point, &uFlags);

    if (uFlags & LVHT_ONITEMLABEL)
    {
        m_myListCtrl.SetItem(nItem, 0, LVIF_STATE, NULL, 0, LVIS_SELECTED,
            LVIS_SELECTED, 0);
    }

    *pResult = 0;
}

CListCtrl::InsertColumn

Liste görünümü denetimine yeni bir sütun ekler.

int InsertColumn(
    int nCol,
    const LVCOLUMN* pColumn);

int InsertColumn(
    int nCol,
    LPCTSTR lpszColumnHeading,
    int nFormat = LVCFMT_LEFT,
    int nWidth = -1,
    int nSubItem = -1);

Parametreler

nCol
Yeni sütunun dizini.

pColumn
Yeni sütunun özniteliklerini içeren bir LVCOLUMN yapının adresi.

lpszColumnHeading
Sütunun başlığını içeren dizenin adresi.

nFormat
Sütunun hizalamasını belirten tamsayı. Şu değerlerden biri olabilir: LVCFMT_LEFT, LVCFMT_RIGHTveya LVCFMT_CENTER.

nWidth
Sütunun piksel cinsinden genişliği. Bu parametre -1 ise, sütun genişliği ayarlanmadı.

nSubItem
Sütunla ilişkili alt dizinin dizini. Bu parametre -1 ise, sütunla hiçbir alt sınıf ilişkilendirilmemiştir.

Dönüş Değeri

Başarılı olursa yeni sütunun dizini veya aksi takdirde -1.

Açıklamalar

Liste görünümü denetimindeki en soldaki sütun sola hizalanmış olmalıdır.

Yapı, LVCOLUMN rapor görünümündeki bir sütunun özniteliklerini içerir. Ayrıca bir sütun hakkında bilgi almak için de kullanılır. Bu yapı Windows SDK'sında açıklanmıştır.

CListCtrl::InsertGroup

Liste görünümü denetimine bir grup ekler.

LRESULT InsertGroup(
    int index,
    PLVGROUP pgrp);

Parametreler

index
Grubun eklendiği öğenin dizini.

pgrp
Eklenecek grubu içeren bir LVGROUP yapıya yönelik işaretçi.

Dönüş Değeri

Grubun eklendiği öğenin dizinini veya işlem başarısız olursa -1 değerini döndürür.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_INSERTGROUP işlevselliğine öykünmektedir.

CListCtrl::InsertGroupSorted

Belirtilen grubu sıralı bir grup listesine ekler.

LRESULT InsertGroupSorted(PLVINSERTGROUPSORTED pStructInsert);

Parametreler

pStructInsert
Eklenecek grubu içeren bir LVINSERTGROUPSORTED yapı işaretçisi.

Dönüş Değeri

Dönüş değeri kullanılmaz.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_INSERTGROUPSORTED işlevselliğine öykünmektedir.

CListCtrl::InsertItem

Liste görünümü denetimine bir öğe ekler.

int InsertItem(const LVITEM* pItem);

int InsertItem(
    int nItem,
    LPCTSTR lpszItem);

int InsertItem(
    int nItem,
    LPCTSTR lpszItem,
    int nImage);

int InsertItem(
    UINT nMask,
    int nItem,
    LPCTSTR lpszItem,
    UINT nState,
    UINT nStateMask,
    int nImage,
    LPARAM lParam);

Parametreler

pItem
Windows SDK'da açıklandığı gibi öğenin özniteliklerini belirten bir LVITEM yapısının işaretçisi.

nItem
Eklenecek öğenin dizini.

lpszItem
Öğenin etiketini içeren bir dizenin adresi veya LPSTR_TEXTCALLBACK öğe bir geri çağırma öğesiyse. Geri arama öğeleri hakkında bilgi için bkz CListCtrl::GetCallbackMask. .

nImage
Öğenin görüntüsünün dizini veya I_IMAGECALLBACK öğe bir geri çağırma öğesiyse. Geri arama öğeleri hakkında bilgi için bkz CListCtrl::GetCallbackMask. .

nMask
parametresi, nMask parametre olarak geçirilen öğe özniteliklerinin geçerli olduğunu belirtir. Windows SDK'sında Yapı bölümünde LVITEM açıklanan maske değerlerinden biri veya daha fazlası olabilir. Geçerli değerler bit düzeyinde OR işleciyle birleştirilebilir.

nState
Öğenin durumunu, durum görüntüsünü ve katman görüntüsünü gösterir. Daha fazla bilgi için geçerli bayrakların listesi için Windows SDK'sı Yapı ve Liste-Görünüm Öğe Durumları konularına LVITEM bakın.

nStateMask
Durum üyesinin hangi bitlerinin alınacağını veya değiştirileceğini gösterir. Daha fazla bilgi için bkz LVITEM . Windows SDK'sında yapı .

lParam
Öğeyle ilişkili 32 bit uygulamaya özgü değer (x64 için derleniyorsanız 64 bit). Bu parametre belirtilirse özniteliğini nMask LVIF_PARAMayarlamanız gerekir.

Dönüş Değeri

Başarılı olursa yeni öğenin dizini veya aksi takdirde -1.

Açıklamalar

Bu yöntemin çağrılması, iletinin LVM_INSERTITEM denetim pencerenize gönderilmesine neden olabilir. Denetimin ilişkili ileti işleyicisi, belirli koşullar altında öğe metnini ayarlayamayabilir (örneğin, LVS_OWNERDRAWgibi pencere stilleri kullanma). Bu koşullar hakkında daha fazla bilgi için bkz LVM_INSERTITEM . Windows SDK'sı.

Örnek

CString strText;
int nColumnCount = m_myListCtrl.GetHeaderCtrl()->GetItemCount();

// Insert 10 items in the list view control.
for (int i = 0; i < 10; i++)
{
    strText.Format(TEXT("item %d"), i);

    // Insert the item, select every other item.
    m_myListCtrl.InsertItem(LVIF_TEXT | LVIF_STATE, i, strText,
        (i % 2) == 0 ? LVIS_SELECTED : 0, LVIS_SELECTED, 0, 0);

    // Initialize the text of the subitems.
    for (int j = 1; j < nColumnCount; j++)
    {
        strText.Format(TEXT("sub-item %d %d"), i, j);
        m_myListCtrl.SetItemText(i, j, strText);
    }
}

CListCtrl::InsertMarkHitTest

Belirtilen noktaya en yakın ekleme noktasını alır.

int InsertMarkHitTest(
    LPPOINT pPoint,
    LPLVINSERTMARK plvim) const;

Parametreler

pPoint
Liste denetiminin istemci alanına göre isabet testi koordinatlarını içeren bir POINT yapı işaretçisi.

plvim
Point parametresi tarafından tanımlanan koordinatlara en yakın ekleme noktasını belirten bir LVINSERTMARK yapı işaretçisi.

Dönüş Değeri

Belirtilen noktaya en yakın ekleme noktası.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_INSERTMARKHITTEST işlevselliğine öykünmektedir.

CListCtrl::IsGroupViewEnabled

Liste görünümü denetimi için grup görünümünün etkinleştirilip etkinleştirilmediğini belirler.

BOOL IsGroupViewEnabled() const;

Dönüş Değeri

Grup görünümü etkinse veya FALSE başka bir şekilde döndürülüyorsa döndürürTRUE.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_ISGROUPVIEWENABLED işlevselliğine öykünmektedir.

CListCtrl::IsItemVisible

Geçerli liste görünümü denetiminde belirtilen bir öğenin görünür olup olmadığını gösterir.

BOOL IsItemVisible(int index) const;

Parametreler

index
[in] Geçerli liste görünümü denetimindeki bir öğenin sıfır tabanlı dizini.

Dönüş Değeri

TRUE belirtilen öğe görünür durumdaysa; aksi takdirde , FALSE.

Açıklamalar

Bu yöntem, Windows SDK'sında açıklanan iletiyi gönderir LVM_ISITEMVISIBLE .

CListCtrl::MapIDToIndex

Geçerli liste görünümü denetimindeki bir öğenin benzersiz kimliğini dizinle eşler.

UINT MapIDToIndex(UINT id) const;

Parametreler

id
[in] Bir öğenin benzersiz kimliği.

Dönüş Değeri

Belirtilen kimlik için geçerli dizin.

Açıklamalar

Liste görünümü denetimi, öğeleri dizine göre dahili olarak izler. Dizinler denetimin ömrü boyunca değişebileceğinden bu sorunlara yol açabilir. Liste görünümü denetimi, öğe oluşturulduğunda bir öğeyi kimlikle etiketleyebilir ve liste görünümü denetiminin ömrü boyunca benzersizliği garanti etmek için bu kimliği kullanabilirsiniz.

Çok iş parçacıklı bir ortamda dizin, arka plan iş parçacıklarında değil, yalnızca liste görünümü denetimini barındıran iş parçacığında garanti edilir.

Bu yöntem, Windows SDK'sında açıklanan iletiyi gönderir LVM_MAPIDTOINDEX .

CListCtrl::MapIndexToID

Geçerli liste görünümü denetimindeki bir öğenin dizinini benzersiz bir kimlikle eşler.

UINT MapIndexToID(UINT index) const;

Parametreler

index
[in] Bir öğenin sıfır tabanlı dizini.

Dönüş Değeri

Belirtilen öğe için benzersiz bir kimlik.

Açıklamalar

Liste görünümü denetimi, öğeleri dizine göre dahili olarak izler. Dizinler denetimin ömrü boyunca değişebileceğinden bu sorunlara yol açabilir. Liste görünümü denetimi, öğe oluşturulduğunda bir öğeyi kimlikle etiketleyebilir. Liste görünümü denetiminin ömrü boyunca belirli bir öğeye erişmek için bu kimliği kullanabilirsiniz.

Çok iş parçacıklı bir ortamda dizin, arka plan iş parçacıklarında değil, yalnızca liste görünümü denetimini barındıran iş parçacığında garanti edilir.

Bu yöntem, Windows SDK'sında açıklanan iletiyi gönderir LVM_MAPINDEXTOID .

Örnek

İlk kod örneği, m_listCtrlgeçerli liste görünümü denetimine erişmek için kullanılan bir değişkeni tanımlar. Bu değişken sonraki örnekte kullanılır.

public:
    // Variable used to access the list control.
    CListCtrl m_listCtrl;

Sonraki kod örneği yöntemini gösterir MapIndexToID . Bu kod örneğinin önceki bir bölümünde, rapor görünümünde "ClientID" ve "Grade" başlıklı iki sütunu görüntüleyen bir liste görünümü denetimi oluşturduk. Aşağıdaki örnek, her liste görünümü öğesinin dizinini bir kimlik numarasıyla eşler ve her kimlik numarası için dizini alır. Son olarak, örnek özgün dizinlerin alınıp alınmadığını bildirir.

// MapIndexToID
int iCount = m_listCtrl.GetItemCount();
UINT nId = 0;
UINT nIndex = 0;
for (int iIndexOriginal = 0; iIndexOriginal < iCount; iIndexOriginal++)
{
    // Map index to ID.
    nId = m_listCtrl.MapIndexToID((UINT)iIndexOriginal);

    // Map ID to index.
    nIndex = m_listCtrl.MapIDToIndex(nId);

    if (nIndex != (UINT)(iIndexOriginal))
    {
        CString str;
        str.Format(_T("Mapped index (%d) is not equal to original index (%d)"),
            nIndex, (UINT)(iIndexOriginal));
        AfxMessageBox(str);
        return;
    }
}
AfxMessageBox(_T("The mapped indexes and original indexes are equal."),
    MB_ICONINFORMATION);

CListCtrl::MoveGroup

Belirtilen grubu liste görünümü denetiminin belirtilen sıfır tabanlı dizinine taşır.

LRESULT MoveGroup(
    int iGroupId,
    int toIndex);

Parametreler

iGroupId
Taşınacak grubun tanımlayıcısı.

toIndex
Grubun taşınacağı sıfır tabanlı dizin.

Dönüş Değeri

Dönüş değeri kullanılmaz.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_MOVEGROUP işlevselliğine öykünmektedir.

CListCtrl::MoveItemToGroup

Belirtilen öğeyi belirtilen gruba taşır.

void MoveItemToGroup(
    int idItemFrom,
    int idGroupTo);

Parametreler

idItemFrom
[in] Taşınacak öğenin dizini.

idGroupTo
[in] Öğenin taşınacağı grubun tanımlayıcısı.

Açıklamalar

Not

Bu yöntem şu anda uygulanmadı.

Bu yöntem, Windows SDK'da açıklandığı gibi iletinin işlevselliğini LVM_MOVEITEMTOGROUP öykünmektedir.

CListCtrl::RedrawItems

Liste görünümü denetimini bir öğe aralığını yeniden boyamaya zorlar.

BOOL RedrawItems(
    int nFirst,
    int nLast);

Parametreler

nFirst
Yeniden boyanacak ilk öğenin dizini.

nLast
Yeniden boyanacak son öğenin dizini.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Açıklamalar

Liste görünümü penceresi bir WM_PAINT iletisi alıncaya kadar belirtilen öğeler yeniden boyanmıyor. Hemen yeniden boyamak için bu işlevi kullandıktan sonra Windows UpdateWindow işlevini çağırın.

CListCtrl::RemoveAllGroups

Liste görünümü denetiminden tüm grupları kaldırır.

void RemoveAllGroups();

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_REMOVEALLGROUPS işlevselliğine öykünmektedir.

CListCtrl::RemoveGroup

Belirtilen grubu liste görünümü denetiminden kaldırır.

LRESULT RemoveGroup(int iGroupId);

Parametreler

iGroupId
Kaldırılacak grubun tanımlayıcısı.

Dönüş Değeri

Başarılı olursa grubun dizinini veya aksi takdirde -1'i döndürür.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_REMOVEGROUP işlevselliğine öykünmektedir.

CListCtrl::Scroll

Liste görünümü denetiminin içeriğini kaydırıyor.

BOOL Scroll(CSize size);

Parametreler

size
CSize Yatay ve dikey kaydırma miktarını piksel cinsinden belirten bir nesne. Boyut y üyesi, liste görünümü denetiminin çizgisinin piksel cinsinden yüksekliğine bölünür ve denetim sonuçta elde edilen satır sayısıyla kaydırılır.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

CListCtrl::SetBkColor

Liste görünümü denetiminin arka plan rengini ayarlar.

BOOL SetBkColor(COLORREF cr);

Parametreler

cr
Ayarlanacağı arka plan rengi veya CLR_NONE arka plan rengi olmayan değer. Arka plan renklerine sahip liste görünümü denetimleri, arka plan renkleri olmayan denetimlerden önemli ölçüde daha hızlı yeniden çiziliyor. Daha fazla bilgi için bkz COLORREF . Windows SDK'sı.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Örnek

// Use the 3D button face color for the background.
COLORREF crBkColor = ::GetSysColor(COLOR_3DFACE);
m_myListCtrl.SetBkColor(crBkColor);
ASSERT(m_myListCtrl.GetBkColor() == crBkColor);

CListCtrl::SetBkImage

Liste görünümü denetiminin arka plan görüntüsünü ayarlar.

BOOL SetBkImage(LVBKIMAGE* plvbkImage);

BOOL SetBkImage(
    HBITMAP hBitmap,
    BOOL fTile = TRUE,
    int xOffsetPercent = 0,
    int yOffsetPercent = 0);

BOOL SetBkImage(
    LPTSTR pszUrl,
    BOOL fTile = TRUE,
    int xOffsetPercent = 0,
    int yOffsetPercent = 0);

Parametreler

plvbkImage
Yeni arka plan görüntüsü bilgilerini içeren bir LVBKIMAGE yapının adresi.

hBitmap
Bit eşlem tutamacı.

pszUrl
NULLArka plan görüntüsünün URL'sini içeren - sonlandırılan dize.

fTile
Resim liste görünümü denetiminin arka planında kutucuklanacaksa sıfır olmayan; aksi takdirde 0.

xOffsetPercent
Görüntünün sol kenarının, liste görünümü denetiminin kaynağından piksel cinsinden uzaklığı.

yOffsetPercent
Görüntünün üst kenarının, liste görünümü denetiminin kaynağından piksel cinsinden uzaklığı.

Dönüş Değeri

Başarılı olursa sıfır olmayan veya aksi takdirde sıfır döndürür.

Açıklamalar

Not

CListCtrl::SetBkImage OLE COM işlevini kullandığından, kullanılmadan önce SetBkImageOLE kitaplıklarının başlatılması gerekir. Uygulama başlatıldığında COM kitaplıklarını başlatmak ve uygulama sonlandırıldığında kitaplıkları başlatmak en iyisidir. Bu, ActiveX teknolojisi, OLE Otomasyonu, OLE Bağlama/Ekleme veya ODBC/DAO işlemlerinden yararlanan MFC uygulamalarında otomatik olarak gerçekleştirilir.

Örnek

örneğine CListCtrl::GetBkImagebakın.

CListCtrl::SetCallbackMask

Liste görünümü denetimi için geri çağırma maskesini ayarlar.

BOOL SetCallbackMask(UINT nMask);

Parametreler

nMask
Geri çağırma maskesinin yeni değeri.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Örnek

// Set the callback mask so that only the selected and focused states
// are stored for each item.
m_myListCtrl.SetCallbackMask(LVIS_SELECTED|LVIS_FOCUSED);
ASSERT(m_myListCtrl.GetCallbackMask() ==
    (LVIS_SELECTED|LVIS_FOCUSED));

CListCtrl::SetCheck

Liste denetim öğesinin durum görüntüsünün görünür olup olmadığını belirler.

BOOL SetCheck(
    int nItem,
    BOOL fCheck = TRUE);

Parametreler

nItem
Liste denetim öğesinin sıfır tabanlı dizini.

fCheck
Öğenin durum görüntüsünün görünür olup olmayacağını belirtir. Varsayılan olarak, fCheck ve TRUE durum görüntüsü görünür durumdadır. ise fCheck FALSEgörünür değildir.

Dönüş Değeri

Öğe işaretliyse sıfır olmayan, aksi takdirde 0.

Örnek

int nCount = m_myListCtrl.GetItemCount();
BOOL fCheck = FALSE;

// Set the check state of every other item to TRUE and
// all others to FALSE.
for (int i = 0; i < nCount; i++)
{
    m_myListCtrl.SetCheck(i, fCheck);
    ASSERT((m_myListCtrl.GetCheck(i) && fCheck) ||
        (!m_myListCtrl.GetCheck(i) && !fCheck));
    fCheck = !fCheck;
}

CListCtrl::SetColumn

Liste görünümü sütununun özniteliklerini ayarlar.

BOOL SetColumn(
    int nCol,
    const LVCOLUMN* pColumn);

Parametreler

nCol
Öznitelikleri ayarlanacak sütunun dizini.

pColumn
Windows SDK'da açıklandığı gibi yeni sütun özniteliklerini içeren bir LVCOLUMN yapının adresi. Yapının mask üyesi, ayarlanacağı sütun özniteliklerini belirtir. mask Üye değeri belirtirseLVCF_TEXT, yapının pszText üyesi null olarak sonlandırılan dizenin adresidir ve yapının cchTextMax üyesi yoksayılır.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Örnek

örneğine CListCtrl::GetColumnbakın.

CListCtrl::SetColumnOrderArray

Liste görünümü denetiminin sütun sırasını (soldan sağa) ayarlar.

BOOL SetColumnOrderArray(
    int iCount,
    LPINT piArray);

Parametreler

piArray
Liste görünümü denetimindeki sütunların dizin değerlerini içeren arabelleğe yönelik bir işaretçi (soldan sağa). Arabellek, liste görünümü denetimindeki toplam sütun sayısını içerecek kadar büyük olmalıdır.

iCount
Liste görünümü denetimindeki sütun sayısı.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Açıklamalar

Bu üye işlevi, ListView_SetColumnOrderArrayWindows SDK'da açıklandığı gibi Win32 makrosunun davranışını uygular.

Örnek

örneğine CListCtrl::GetColumnOrderArraybakın.

CListCtrl::SetColumnWidth

Rapor görünümünde veya liste görünümünde bir sütunun genişliğini değiştirir.

BOOL SetColumnWidth(
    int nCol,
    int cx);

Parametreler

nCol
Genişliğin ayarlanacağı sütunun dizini. Liste görünümünde bu parametre 0 olmalıdır.

cx
Sütunun yeni genişliği. Windows SDK'da LVSCW_AUTOSIZE LVM_SETCOLUMNWIDTH açıklandığı gibi veya LVSCW_AUTOSIZE_USEHEADERolabilir.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

CListCtrl::SetExtendedStyle

Liste görünümü denetiminin geçerli genişletilmiş stillerini ayarlar.

DWORD SetExtendedStyle(DWORD dwNewStyle);

Parametreler

dwNewStyle
Liste görünümü denetimi tarafından kullanılacak genişletilmiş stillerin birleşimi. Bu stillerin açıklayıcı bir listesi için Windows SDK'sında Genişletilmiş Liste Görünümü Stilleri konusuna bakın.

Dönüş Değeri

Liste görünümü denetimi tarafından kullanılan önceki genişletilmiş stillerin birleşimi.

Açıklamalar

Bu üye işlevi, ListView_SetExtendedListViewStyleWindows SDK'da açıklandığı gibi Win32 makrosunun davranışını uygular.

Örnek

// Allow the header controls item to be movable by the user.
m_myListCtrl.SetExtendedStyle
    (m_myListCtrl.GetExtendedStyle()|LVS_EX_HEADERDRAGDROP);

CListCtrl::SetGroupInfo

Geçerli liste görünümü denetiminin belirtilen grubunu açıklayan bilgileri ayarlar.

int SetGroupInfo(
    int iGroupId,
    PLVGROUP pgrp);

Parametreler

iGroupId
Bilgileri ayarlanmış grubun tanımlayıcısı.

pgrp
Ayarlanacağı bilgileri içeren bir LVGROUP yapıya yönelik işaretçi. Çağıran, bu yapıyı ayırıp üyelerini ayarlamakla sorumludur.

Dönüş Değeri

Yöntem başarılı olursa grubun kimliği; aksi takdirde, -1.

Açıklamalar

Bu yöntem, Windows SDK'sında açıklanan iletiyi gönderir LVM_SETGROUPINFO .

CListCtrl::SetGroupMetrics

Liste görünümü denetiminin grup ölçümlerini ayarlar.

void SetGroupMetrics(PLVGROUPMETRICS pGroupMetrics);

Parametreler

pGroupMetrics
Ayarlanacak grup ölçümleri bilgilerini içeren bir LVGROUPMETRICS yapı işaretçisi.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_SETGROUPMETRICS işlevselliğine öykünmektedir.

CListCtrl::SetHotCursor

Liste görünümü denetimi için etkin izleme etkinleştirildiğinde kullanılan imleci ayarlar.

HCURSOR SetHotCursor(HCURSOR hc);

Parametreler

hc
Sık erişimli imleci temsil etmek için kullanılan bir imleç kaynağının tutamacı.

Dönüş Değeri

Liste görünümü denetimi tarafından kullanılan önceki sık erişimli imleç kaynağının tutamacı.

Açıklamalar

Bu üye işlevi, ListView_SetHotCursorWindows SDK'da açıklandığı gibi Win32 makrosunun davranışını uygular.

Yalnızca vurgulama seçimi etkinleştirildiğinde görünen etkin imleç, imleç herhangi bir liste görünümü öğesinin üzerinden geçerken görünür. Genişletilmiş stil ayarlanarak LVS_EX_TRACKSELECT vurgu seçimi etkinleştirilir.

Örnek

örneğine CListCtrl::GetHotCursorbakın.

CListCtrl::SetHotItem

Liste görünümü denetiminin geçerli sık erişimli öğesini ayarlar.

int SetHotItem(int iIndex);

Parametreler

iIndex
Sık erişimli öğe olarak ayarlanacak öğenin sıfır tabanlı dizini.

Dönüş Değeri

Önceden sık erişimli öğenin sıfır tabanlı dizini.

Açıklamalar

Bu üye işlevi, ListView_SetHotItemWindows SDK'da açıklandığı gibi Win32 makrosunun davranışını uygular.

Örnek

örneğine CListCtrl::GetHotItembakın.

CListCtrl::SetHoverTime

Liste görünümü denetiminin geçerli vurgulama zamanını ayarlar.

DWORD SetHoverTime(DWORD dwHoverTime = (DWORD)-1);

Parametreler

dwHoverTime
Fare imlecinin seçilmeden önce öğenin üzerine gelmeleri gereken milisaniye cinsinden yeni gecikme. Varsayılan değer geçirilirse, saat varsayılan vurgulama süresine ayarlanır.

Dönüş Değeri

Milisaniye cinsinden önceki vurgulama süresi.

Açıklamalar

Bu üye işlevi, ListView_SetHoverTimeWindows SDK'da açıklandığı gibi Win32 makrosunun davranışını uygular.

Örnek

örneğine CListCtrl::GetHoverTimebakın.

CListCtrl::SetIconSpacing

Liste görünümü denetimindeki simgeler arasındaki aralığı ayarlar.

CSize SetIconSpacing(
    int cx,
    int cy);

CSize SetIconSpacing(CSize size);

Parametreler

cx
X eksenindeki simgeler arasındaki uzaklık (piksel cinsinden).

cy
Y eksenindeki simgeler arasındaki uzaklık (piksel cinsinden).

size
CSize x ve y eksenlerindeki simgeler arasındaki uzaklığı (piksel cinsinden) belirten nesne.

Dönüş Değeri

CSize Simge aralığı için önceki değerleri içeren bir nesne.

Açıklamalar

Bu üye işlevi, ListView_SetIconSpacingWindows SDK'da açıklandığı gibi Win32 makrosunun davranışını uygular.

Örnek

// Leave lots of space between icons.
m_myListCtrl.SetIconSpacing(CSize(100, 100));

CListCtrl::SetImageList

Liste görünümü denetimine resim listesi atar.

CImageList* SetImageList(
    CImageList* pImageList,
    int nImageListType);

Parametreler

pImageList
Atanacak görüntü listesinin işaretçisi.

nImageListType
Resim listesi türü. Bu değerlerden biri olabilir:

  • LVSIL_NORMAL Büyük simgeler içeren resim listesi.
  • LVSIL_SMALL Küçük simgeler içeren resim listesi.
  • LVSIL_STATE Durum görüntülerinin yer aldığı resim listesi.

Dönüş Değeri

Önceki resim listesinin işaretçisi.

Örnek

örneğine CListCtrl::GetImageListbakın.

CListCtrl::SetInfoTip

Araç ipucu metnini ayarlar.

BOOL SetInfoTip(PLVSETINFOTIP plvInfoTip);

Parametreler

plvInfoTip
Ayarlanacak bilgileri içeren bir LVFSETINFOTIP yapı işaretçisi.

Dönüş Değeri

Başarılı olduğunda, FALSE başarısız olduğunda döndürürTRUE.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_SETINFOTIP işlevselliğine öykünmektedir.

CListCtrl::SetInsertMark

Ekleme noktasını tanımlı konuma ayarlar.

BOOL SetInsertMark(LPLVINSERTMARK plvim);

Parametreler

plvim
Ekleme noktasının ayarlanacağı yeri belirten bir LVINSERTMARK yapı işaretçisi.

Dönüş Değeri

Başarılı olursa veya FALSE başka bir şekilde döndürürTRUE. FALSE , yapı üyesinin cbSize LVINSERTMARK boyutu yapının gerçek boyutuna eşit değilse veya ekleme noktası geçerli görünümde geçerli değilse döndürülür.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_SETINSERTMARK işlevselliğine öykünmektedir.

CListCtrl::SetInsertMarkColor

Ekleme noktasının rengini ayarlar.

COLORREF SetInsertMarkColor(COLORREF color);

Parametreler

color
COLORREF Ekleme noktasının ayarlanacağı rengi belirten yapı.

Dönüş Değeri

Önceki rengi içeren bir COLORREF yapı döndürür.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_SETINSERTMARKCOLOR işlevselliğine öykünmektedir.

CListCtrl::SetItem

Liste görünümü öğesinin özniteliklerinin bazılarını veya tümünü ayarlar.

BOOL SetItem(const LVITEM* pItem);

BOOL SetItem(
    int nItem,
    int nSubItem,
    UINT nMask,
    LPCTSTR lpszItem,
    int nImage,
    UINT nState,
    UINT nStateMask,
    LPARAM lParam);

BOOL SetItem(
    int nItem,
    int nSubItem,
    UINT nMask,
    LPCTSTR lpszItem,
    int nImage,
    UINT nState,
    UINT nStateMask,
    LPARAM lParam,
    int nIndent);

Parametreler

pItem
Windows SDK'da açıklandığı gibi yeni öğe özniteliklerini içeren bir LVITEM yapının adresi. Yapı iItem ve iSubItem üyeleri öğeyi veya alt öğeyi tanımlar ve yapının mask üyesi hangi özniteliklerin ayarlandığını belirtir. Üye hakkında mask daha fazla bilgi için bkz . Açıklamalar.

nItem
Öznitelikleri ayarlanacak öğenin dizini.

nSubItem
Öznitelikleri ayarlanacak alt dizinin dizini.

nMask
Ayarlanacak öznitelikleri belirtir (bkz. Açıklamalar).

lpszItem
Öğenin etiketini belirten null ile sonlandırılan dizenin adresi.

nImage
Görüntü listesinde öğenin görüntüsünün dizini.

nState
Değiştirilecek durumların değerlerini belirtir (bkz. Açıklamalar).

nStateMask
Hangi durumların değiştirileceği belirtir (bkz. Açıklamalar).

lParam
Öğeyle ilişkilendirilecek 32 bit (x64 için derleniyorsanız 64 bit) uygulamaya özgü bir değer.

nIndent
Girintinin piksel cinsinden genişliği. Sistem tanımlı minimum genişlikten küçükse nIndent , yeni genişlik sistem tanımlı en küçük değere ayarlanır

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Açıklamalar

iItem yapı ve ve parametrelerinin LVITEM ve iSubItem nItem nSubItem üyeleri, öznitelikleri ayarlanacak öğeyi ve alt öğeyi tanımlar.

mask Yapı nMask ve parametresinin LVITEM üyesi, ayarlanacak öğe özniteliklerini belirtir:

  • LVIF_TEXTpszText Üye veya lpszItem parametresi null olarak sonlandırılan dizenin adresidir; cchTextMax üye yoksayılır.
  • LVIF_STATE Üye stateMask veya nStateMask parametre hangi öğe durumlarının değiştireceğini belirtir ve state üye veya nState parametre bu durumların değerlerini içerir.

Örnek

örneğine CListCtrl::HitTestbakın.

CListCtrl::SetItemCount

Çok sayıda öğe eklemek için bir liste görünümü denetimi hazırlar.

void SetItemCount(int nItems);

Parametreler

nItems
Denetimin sonunda içereceği öğe sayısı.

Açıklamalar

Sanal liste görünümü denetiminin öğe sayısını ayarlamak için bkz CListCtrl::SetItemCountEx. .

Bu üye işlevi, ListView_SetItemCountWindows SDK'da açıklandığı gibi Win32 makrosunun davranışını uygular.

Örnek

CString str;

// Add 1024 items to the list view control.
m_myListCtrl.SetItemCount(1024);

for (int i = 0; i < 1024; i++)
{
    str.Format(TEXT("item %d"), i);
    m_myListCtrl.InsertItem(i, str);
}

CListCtrl::SetItemCountEx

Sanal liste görünümü denetimi için öğe sayısını ayarlar.

BOOL SetItemCountEx(
    int iCount,
    DWORD dwFlags = LVSICF_NOINVALIDATEALL);

Parametreler

iCount
Denetimin sonunda içereceği öğe sayısı.

dwFlags
Öğe sayısı sıfırladıktan sonra liste görünümü denetiminin davranışını belirtir. Bu değer aşağıdakilerin bir bileşimi olabilir:

  • LVSICF_NOINVALIDATEALL Etkilenen öğeler şu anda görünümde olmadığı sürece liste görünümü denetimi yeniden boyanmayacak. Bu varsayılan değerdir.
  • LVSICF_NOSCROLL Öğe sayısı değiştiğinde liste görünümü denetimi kaydırma konumunu değiştirmez.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Açıklamalar

Bu üye işlevi, ListView_SetItemCountExWindows SDKand yalnızca sanal liste görünümleri için çağrılmalıdır bölümünde açıklandığı gibi Win32 makrosunun davranışını uygular.

Örnek

CString str;

// Add 1024 items to the list view control.

// Force my virtual list view control to allocate
// enough memory for my 1024 items.
m_myVirtualListCtrl.SetItemCountEx(1024, LVSICF_NOSCROLL|
    LVSICF_NOINVALIDATEALL);

for (int i = 0; i < 1024; i++)
{
    str.Format(TEXT("item %d"), i);
    m_myVirtualListCtrl.InsertItem(i, str);
}

CListCtrl::SetItemData

tarafından nItembelirtilen öğeyle ilişkili uygulamaya özgü 32 bit (x64 için derleniyorsanız 64 bit) değerini ayarlar.

BOOL SetItemData(int nItem, DWORD_PTR dwData);

Parametreler

nItem
Verileri ayarlanacak olan liste öğesinin dizini.

dwData
Öğeyle ilişkilendirmek için 32 bit değer (x64 için derleniyorsanız 64 bit).

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Bu değer, Windows SDK'da açıklandığı gibi yapının üyesidir lParam LVITEM .

Örnek

// Set the data of each item to be equal to its index.
for (int i = 0; i < m_myListCtrl.GetItemCount(); i++)
{
    m_myListCtrl.SetItemData(i, i);
}

CListCtrl::SetItemIndexState

Geçerli liste görünümü denetimindeki bir öğenin durumunu ayarlar.

BOOL SetItemIndexState(
    PLVITEMINDEX pItemIndex,
    DWORD dwState,
    DWORD dwMask) const;

Parametreler

pItemIndex
[in] Öğeyi açıklayan bir LVITEMINDEX yapıya yönelik işaretçi. Çağıran, bu yapıyı ayırıp üyelerini ayarlamakla sorumludur.

dwState
[in] Liste görünümü öğe durumlarının bit düzeyinde bir bileşimi olan öğenin ayarlanacağı durum. Sıfırlanması gereken sıfır veya ayarlanacağı bir durum belirtin.

dwMask
[in] parametresi tarafından dwState belirtilen durumun geçerli bitlerinin maskesi. Liste görünümü öğe durumlarının bit düzeyinde bir bileşimini (VEYA) belirtin.

Dönüş Değeri

TRUE bu yöntem başarılı olursa; aksi takdirde , FALSE.

Açıklamalar

parametresi hakkında dwState daha fazla bilgi için bkz . Liste Görünümü Öğe Durumları.

parametresi hakkında dwMask daha fazla bilgi için yapının üyesine LVITEM bakınstateMask.

Bu yöntem, Windows SDK'sında açıklanan iletiyi gönderir LVM_SETITEMINDEXSTATE .

CListCtrl::SetItemPosition

Öğeyi liste görünümü denetiminde belirtilen konuma taşır.

BOOL SetItemPosition(
    int nItem,
    POINT pt);

Parametreler

nItem
Konumu ayarlanacak öğenin dizini.

pt
POINT Öğenin sol üst köşesindeki görünüm koordinatlarında yeni konumu belirten bir yapı.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Açıklamalar

Denetim simge veya küçük simge görünümünde olmalıdır.

Liste görünümü denetimi stile LVS_AUTOARRANGE sahipse, liste görünümü öğenin konumu ayarlandıktan sonra düzenlenir.

Örnek

örneğine CListCtrl::GetItemPositionbakın.

CListCtrl::SetItemState

Liste görünümü denetimindeki bir öğenin durumunu değiştirir.

BOOL SetItemState(
    int nItem,
    LVITEM* pItem);

BOOL SetItemState(
    int nItem,
    UINT nState,
    UINT nMask);

Parametreler

nItem
Durumu ayarlanacak öğenin dizini. Durum değişikliğini tüm öğelere uygulamak için -1'i geçirin.

pItem
Windows SDK'da açıklandığı gibi bir LVITEM yapının adresi. Yapının stateMask üyesi hangi durum bitlerinin değiştireceğini belirtir ve yapının state üyesi bu bitler için yeni değerleri içerir. Diğer üyeler yoksayılır.

nState
Durum bitleri için yeni değerler. Olası değerlerin listesi için bkz CListCtrl::GetNextItem . ve LVITEM durum üyesi.

nMask
Hangi durum bitlerinin değiştirileceğini belirten maske. Bu değer, yapının stateMask üyesine LVITEM karşılık gelir.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Açıklamalar

Öğenin "durumu", öğenin kullanılabilirliğini belirten, kullanıcı eylemlerini gösteren veya öğenin durumunu başka bir şekilde yansıtan bir değerdir. Liste görünümü denetimi, kullanıcının öğe seçmesi gibi bazı durum bitlerini değiştirir. Bir uygulama, öğeyi devre dışı bırakmak veya gizlemek ya da katman görüntüsü veya durum görüntüsü belirtmek için diğer durum bitlerini değiştirebilir.

Örnek

örneğine CListCtrl::GetTopIndexbakın.

CListCtrl::SetItemText

Liste görünümü öğesinin veya alt öğesinin metnini değiştirir.

BOOL SetItemText(
    int nItem,
    int nSubItem,
    LPCTSTR lpszText);

Parametreler

nItem
Metni ayarlanacak öğenin dizini.

nSubItem
Öğe etiketini ayarlamak için alt öğenin dizini veya sıfır.

lpszText
Yeni öğe metnini içeren bir dizenin işaretçisi.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Açıklamalar

Bu yöntem, pencere stilini içeren LVS_OWNERDATA denetimlerle kullanılmak üzere tasarlanmamıştır (aslında, bu hata ayıklama derlemelerinde onay işlemine neden olur). Bu liste denetim stili hakkında daha fazla bilgi için bkz . Liste Görünümü Denetimlerine Genel Bakış.

Örnek

örneğine CListCtrl::InsertItembakın.

CListCtrl::SetOutlineColor

Genişletilmiş pencere stili ayarlandıysa, liste görünümü denetiminin kenarlığı rengini LVS_EX_BORDERSELECT ayarlar.

COLORREF SetOutlineColor(COLORREF color);

Parametreler

color
Ana hat rengini içeren yeni COLORREF yapı.

Dönüş Değeri

Ana hat rengini içeren önceki COLORREF yapı

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_SETOUTLINECOLOR işlevselliğine öykünmektedir.

CListCtrl::SetSelectedColumn

Liste görünümü denetiminin seçili sütununu ayarlar.

LRESULT SetSelectedColumn(int iCol);

Parametreler

iCol
Seçilecek sütunun dizini.

Dönüş Değeri

Dönüş değeri kullanılmaz.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_SETSELECTEDCOLUMN işlevselliğine öykünmektedir.

CListCtrl::SetSelectionMark

Liste görünümü denetiminin seçim işaretini ayarlar.

int SetSelectionMark(int iIndex);

Parametreler

iIndex
Birden çok seçimdeki ilk öğenin sıfır tabanlı dizini.

Dönüş Değeri

Önceki seçim işareti veya seçim işareti yoksa -1.

Açıklamalar

Bu üye işlevi, ListView_SetSelectionMarkWindows SDK'da açıklandığı gibi Win32 makrosunun davranışını uygular.

Örnek

örneğine CListCtrl::GetSelectionMarkbakın.

CListCtrl::SetTextBkColor

Liste görünümü denetimindeki metnin arka plan rengini ayarlar.

BOOL SetTextBkColor(COLORREF cr);

Parametreler

cr
COLORREF Yeni metin arka plan rengini belirten bir. Daha fazla bilgi için bkz COLORREF . Windows SDK'sı.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Örnek

// Use the 3D button face color for the background.
COLORREF crBkColor = ::GetSysColor(COLOR_3DFACE);
m_myListCtrl.SetTextBkColor(crBkColor);
ASSERT(m_myListCtrl.GetTextBkColor() == crBkColor);

CListCtrl::SetTextColor

Liste görünümü denetiminin metin rengini ayarlar.

BOOL SetTextColor(COLORREF cr);

Parametreler

cr
COLORREF Yeni metin rengini belirten bir. Daha fazla bilgi için bkz COLORREF . Windows SDK'sı.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Örnek

// Use the window text color for
// the item text of the list view control.
COLORREF crTextColor = ::GetSysColor(COLOR_WINDOWTEXT);
m_myListCtrl.SetTextColor(crTextColor);
ASSERT(m_myListCtrl.GetTextColor() == crTextColor);

CListCtrl::SetTileInfo

Liste görünümü denetiminin kutucuğunun bilgilerini ayarlar.

BOOL SetTileInfo(PLVTILEINFO pTileInfo);

Parametreler

pTileInfo
Ayarlanacak bilgileri içeren bir LVTILEINFO yapı işaretçisi.

Dönüş Değeri

Başarılı olduğunda, FALSE başarısız olduğunda döndürürTRUE.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_SETTILEINFO işlevselliğine öykünmektedir.

CListCtrl::SetTileViewInfo

Liste görünümü denetiminin kutucuk görünümünde kullandığı bilgileri ayarlar.

BOOL SetTileViewInfo(PLVTILEVIEWINFO ptvi);

Parametreler

ptvi
Ayarlanacağı bilgileri içeren bir LVTILEVIEWINFO yapı işaretçisi.

Dönüş Değeri

Başarılı olduğunda, FALSE başarısız olduğunda döndürürTRUE.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_SETTILEVIEWINFO işlevselliğine öykünmektedir.

CListCtrl::SetToolTips

Liste görünümü denetiminin araç ipuçlarını görüntülemek için kullanacağı araç ipucu denetimini ayarlar.

CToolTipCtrl* SetToolTips(CToolTipCtrl* pWndTip);

Parametreler

pWndTip
Liste denetiminin kullanacağı nesne CToolTipCtrl işaretçisi.

Dönüş Değeri

Daha önce denetim tarafından kullanılan araç ipucunun bulunduğu bir CToolTipCtrl nesnenin işaretçisi veya NULL daha önce hiçbir araç ipucu kullanılmadıysa.

Açıklamalar

Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 iletisinin LVM_SETTOOLTIPSdavranışını uygular.

Araç ipuçlarını kullanmamak için, nesneyi oluştururken CListCtrl stili belirtinLVS_NOTOOLTIPS.

CListCtrl::SetView

Liste görünümü denetiminin görünümünü ayarlar.

DWORD SetView(int iView);

Parametreler

iView
Seçilecek görünüm.

Dönüş Değeri

Başarılı olursa 1 veya aksi takdirde -1 döndürür. Örneğin, görünüm geçersizse -1 döndürülür.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_SETVIEW işlevselliğine öykünmektedir.

CListCtrl::SetWorkAreas

Simgelerin liste görünümü denetiminde görüntülenebileceği alanı ayarlar.

void SetWorkAreas(
    int nWorkAreas,
    LPRECT lpRect);

Parametreler

nWorkAreas
tarafından işaret edilen lpRectdizideki yapıların (veya CRect nesnelerin) sayısıRECT.

lpRect
Liste görünümü denetiminin RECT yeni çalışma alanlarını belirten bir yapı dizisinin (veya CRect nesnelerin) adresi. Bu alanlar istemci koordinatlarında belirtilmelidir. Bu parametre ise NULL, çalışma alanı denetimin istemci alanına ayarlanır.

Açıklamalar

Bu üye işlevi, ListView_SetWorkAreasWindows SDK'da açıklandığı gibi Win32 makrosunun davranışını uygular.

Örnek

// Remove all working areas.
m_myListCtrl.SetWorkAreas(0, NULL);

CListCtrl::SortGroups

Bir liste görünümü denetiminde grupları kimliklere göre sıralamak için uygulama tanımlı karşılaştırma işlevini kullanır.

BOOL SortGroups(
    PFNLVGROUPCOMPARE _pfnGroupCompare,
    LPVOID _plv);

Parametreler

_pfnGroupCompare
Grup karşılaştırma işlevinin işaretçisi.

_plv
Geçersiz bir işaretçi.

Dönüş Değeri

Başarılı olduğunda, FALSE başarısız olduğunda döndürürTRUE.

Açıklamalar

Bu üye işlevi, Windows SDK'sında açıklandığı gibi iletinin LVM_SORTGROUPS işlevselliğine öykünmektedir.

CListCtrl::SortItems

Uygulama tanımlı karşılaştırma işlevini kullanarak liste görünümü öğelerini sıralar.

BOOL SortItems(
    PFNLVCOMPARE pfnCompare,
    DWORD_PTR dwData);

Parametreler

pfnCompare
[in] Uygulama tanımlı karşılaştırma işlevinin adresi.

Sıralama işlemi, iki liste öğesinin göreli sırasının her belirlenmesi gerektiğinde karşılaştırma işlevini çağırır. Karşılaştırma işlevi, bir sınıfın statik üyesi veya herhangi bir sınıfın üyesi olmayan tek başına bir işlev olmalıdır.

dwData
[in] Karşılaştırma işlevine geçirilen uygulama tanımlı değer.

Dönüş Değeri

TRUE yöntem başarılı olursa; aksi takdirde FALSE.

Açıklamalar

Bu yöntem, her öğenin dizinini yeni diziyi yansıtacak şekilde değiştirir.

karşılaştırma işlevi pfnCompareaşağıdaki biçimdedir:

int CALLBACK CompareFunc(LPARAM lParam1,
    LPARAM lParam2,
    LPARAM lParamSort);

Karşılaştırma işlevi, birinci öğenin ikinci öğeden önce olması gerekiyorsa negatif bir değer, ikinci öğeyi izlemesi gerekiyorsa pozitif bir değer veya iki öğe eşitse sıfır döndürmelidir.

parametresi, lParam1 karşılaştırılan lParam2 ilk öğeyle ilişkilendirilmiş 32 bit değerdir (x64 için derleniyorsanız 64 bit), parametre ise ikinci öğeyle ilişkili değerdir. Bunlar, listeye eklendiklerinde öğelerin LVITEM yapısının üyesinde lParam belirtilen değerlerdir. lParamSort parametresi değerle dwData aynıdır.

Bu yöntem, Windows SDK'sında açıklanan iletiyi gönderir LVM_SORTITEMS .

Örnek

Aşağıda, öğelerin değerlerine lParam göre sıralanmasını sağlayan basit bir karşılaştırma işlevi yer alır.

// Sort items by associated lParam
int CALLBACK CListCtrlDlg::MyCompareProc(LPARAM lParam1, LPARAM lParam2,
    LPARAM lParamSort)
{
    UNREFERENCED_PARAMETER(lParamSort);
    return (int)(lParam1 - lParam2);
}

// Sort the items by passing in the comparison function.
void CListCtrlDlg::Sort()
{
    m_myListCtrl.SortItems(&CListCtrlDlg::MyCompareProc, 0);
}

CListCtrl::SortItemsEx

Uygulama tanımlı karşılaştırma işlevini kullanarak geçerli liste görünümü denetiminin öğelerini sıralar.

BOOL SortItemsEx(
    PFNLVCOMPARE pfnCompare,
    DWORD_PTR dwData);

Parametreler

pfnCompare
[in] Uygulama tanımlı karşılaştırma işlevinin adresi. Sıralama işlemi, iki liste öğesinin göreli sırasının her belirlenmesi gerektiğinde karşılaştırma işlevini çağırır. Karşılaştırma işlevi, bir sınıfın statik üyesi veya herhangi bir sınıfın üyesi olmayan tek başına bir işlev olmalıdır.

dwData
[in] Karşılaştırma işlevine geçirilen uygulama tanımlı değer.

Dönüş Değeri

TRUE bu yöntem başarılı olursa; aksi takdirde , FALSE.

Açıklamalar

Bu yöntem, her öğenin dizinini yeni diziyi yansıtacak şekilde değiştirir.

karşılaştırma işlevi pfnCompareaşağıdaki biçimdedir:

int CALLBACK CompareFunc(LPARAM lParam1,
    LPARAM lParam2,
    LPARAM lParamSort);

Bu ileti, karşılaştırma işlevine geçirilen bilgilerin türü dışında gibi LVM_SORTITEMSbir iletidir. lParam1 içinde LVM_SORTITEMSve lParam2 karşılaştıracak öğelerin değerleridir. içinde LVM_SORTITEMSEX, lParam1 karşılaştırılır ilk öğenin geçerli dizinidir ve lParam2 ikinci öğenin geçerli dizinidir. Bir öğe hakkında daha fazla bilgi almak için ileti gönderebilirsiniz LVM_GETITEMTEXT .

Karşılaştırma işlevi, birinci öğenin ikinci öğeden önce olması gerekiyorsa negatif bir değer, ikinci öğeyi izlemesi gerekiyorsa pozitif bir değer veya iki öğe eşitse sıfır döndürmelidir.

Not

Sıralama işlemi sırasında liste görünümü içeriği kararsızdır. Geri çağırma işlevi dışında LVM_GETITEMliste görünümü denetimine herhangi bir ileti gönderirse, sonuçlar tahmin edilemez.

Bu yöntem, Windows SDK'sında açıklanan iletiyi gönderir LVM_SORTITEMSEX .

Örnek

İlk kod örneği, m_listCtrlgeçerli liste görünümü denetimine erişmek için kullanılan bir değişkeni tanımlar. Bu değişken sonraki örnekte kullanılır.

public:
    // Variable used to access the list control.
    CListCtrl m_listCtrl;

Sonraki kod örneği yöntemini gösterir SortItemEx . Bu kod örneğinin önceki bir bölümünde, rapor görünümünde "ClientID" ve "Grade" başlıklı iki sütunu görüntüleyen bir liste görünümü denetimi oluşturduk. Aşağıdaki kod örneği, "Grade" sütunundaki değerleri kullanarak tabloyu sıralar.

// The ListCompareFunc() method is a global function used by SortItemEx().
int CALLBACK ListCompareFunc(
                             LPARAM lParam1,
                             LPARAM lParam2,
                             LPARAM lParamSort)
{
    CListCtrl* pListCtrl = (CListCtrl*) lParamSort;
    CString    strItem1 = pListCtrl->GetItemText(static_cast<int>(lParam1), 1);
    CString    strItem2 = pListCtrl->GetItemText(static_cast<int>(lParam2), 1)
    int x1 = _tstoi(strItem1.GetBuffer());
    int x2 = _tstoi(strItem2.GetBuffer());
    int result = 0;
    if ((x1 - x2) < 0)
        result = -1;
    else if ((x1 - x2) == 0)
        result = 0;
    else
        result = 1;

    return result;
}

void CCListCtrl_s2Dlg::OnBnClickedButton1()
{
    // SortItemsEx
    m_listCtrl.SortItemsEx( ListCompareFunc, (LPARAM)&m_listCtrl );
}

CListCtrl::SubItemHitTest

Varsa, hangi liste görünümü öğesinin belirli bir konumda olduğunu belirler.

int SubItemHitTest(LPLVHITTESTINFO pInfo);

Parametreler

pInfo
Yapı işaretçisi LVHITTESTINFO .

Dönüş Değeri

Öğenin veya alt öğenin test edilen (varsa) veya -1 dışındaki tek tabanlı dizini.

Açıklamalar

Bu üye işlevi, ListView_SubItemHitTestWindows SDK'da açıklandığı gibi Win32 makrosunun davranışını uygular.

Örnek

void CListCtrlDlg::OnDblClk(NMHDR* pNMHDR, LRESULT* pResult)
{
    UNREFERENCED_PARAMETER(pResult);
    LPNMITEMACTIVATE pia = (LPNMITEMACTIVATE)pNMHDR;
    LVHITTESTINFO lvhti;

    // Clear the subitem text the user clicked on.
    lvhti.pt = pia->ptAction;
    m_myListCtrl.SubItemHitTest(&lvhti);

    if (lvhti.flags & LVHT_ONITEMLABEL)
    {
        m_myListCtrl.SetItemText(lvhti.iItem, lvhti.iSubItem, NULL);
    }
}

CListCtrl::Update

Liste görünümü denetimini tarafından belirtilen öğeyi yeniden boyamaya zorlar nItem.

BOOL Update(int nItem);

Parametreler

nItem
Güncelleştirilecek öğenin dizini.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde sıfır.

Açıklamalar

Bu işlev, stile sahipse LVS_AUTOARRANGE liste görünümü denetimini de düzenler.

Örnek

örneğine CListCtrl::GetSelectedCountbakın.

Ayrıca bkz.

MFC Örnek SATIR LİSTESİ
CWnd Sınıf
Hiyerarşi Grafiği
CImageList Sınıf