Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu konuda liste görünümü denetiminin nasıl oluşturulacağı gösterilmektedir. Liste görünümü denetimi oluşturmak için CreateWindow veya CreateWindowEx işlevlerini kullanır ve WC_LISTVIEW pencere sınıfını belirtirsiniz.
Liste görünümü denetimi, bir iletişim kutusu şablonunun parçası olarak da oluşturulabilir. Sınıf adı olarak WC_LISTVIEW belirtmeniz gerekir. İletişim kutusu şablonunun bir parçası olarak liste görünümü denetimi kullanmak için, iletişim kutusunun bir örneğini oluşturmadan önce InitCommonControls veya InitCommonControlsEx çağırmalısınız.
Bilmeniz gerekenler
Teknolojileri
Önkoşullar
- C/C++
- Windows Kullanıcı Arabirimi Geliştirme
Talimatlar
önce InitCommonControlsEx işlevini çağırarak ve eşlik eden INITCOMMONCONTROLSEX yapısında ICC_LISTVIEW_CLASSES bitini belirterek pencere sınıfını kaydedin. Bu, ortak denetim DLL'sinin yüklenmesini sağlar. Ardından CreateWindowveya CreateWindowExişlevinikullanın ve WC_LISTVIEW pencere sınıfını belirtin.
Not
Varsayılan olarak, liste görünümü denetimi simge başlığı yazı tipini kullanır. Ancak, metin için kullanılacak yazı tipini belirtmek için WM_SETFONT bir ileti kullanabilirsiniz. Herhangi bir öğe eklemeden önce bu iletiyi göndermelisiniz. Denetim, aralığı ve düzeni belirlemek için WM_SETFONT iletisi tarafından belirtilen yazı tipinin boyutlarını kullanır. Ayrıca, her öğe için yazı tipini özelleştirebilirsiniz. Daha fazla bilgi için bkz. Özel Çizim.
Aşağıdaki C++ kod örneği, rapor görünümünde bir liste görünümü denetimi oluşturur.
// CreateListView: Creates a list-view control in report view.
// Returns the handle to the new control
// TO DO: The calling procedure should determine whether the handle is NULL, in case
// of an error in creation.
//
// HINST hInst: The global handle to the application instance.
// HWND hWndParent: The handle to the control's parent window.
//
HWND CreateListView (HWND hwndParent)
{
INITCOMMONCONTROLSEX icex; // Structure for control initialization.
icex.dwICC = ICC_LISTVIEW_CLASSES;
InitCommonControlsEx(&icex);
RECT rcClient; // The parent window's client area.
GetClientRect (hwndParent, &rcClient);
// Create the list-view window in report view with label editing enabled.
HWND hWndListView = CreateWindow(WC_LISTVIEW,
L"",
WS_CHILD | LVS_REPORT | LVS_EDITLABELS,
0, 0,
rcClient.right - rcClient.left,
rcClient.bottom - rcClient.top,
hwndParent,
(HMENU)IDM_CODE_SAMPLES,
g_hInst,
NULL);
return (hWndListView);
}
Liste görünümü uygulamaları genellikle kullanıcının bir görünümden diğerine değişmesini sağlar.
Aşağıdaki C++ kod örneği liste görünümünün pencere stilini değiştirir ve bu da görünümü değiştirir.
// SetView: Sets a list-view's window style to change the view.
// hWndListView: A handle to the list-view control.
// dwView: A value specifying the new view style.
//
VOID SetView(HWND hWndListView, DWORD dwView)
{
// Retrieve the current window style.
DWORD dwStyle = GetWindowLong(hWndListView, GWL_STYLE);
// Set the window style only if the view bits changed.
if ((dwStyle & LVS_TYPEMASK) != dwView)
{
SetWindowLong(hWndListView,
GWL_STYLE,
(dwStyle & ~LVS_TYPEMASK) | dwView);
} // Logical OR'ing of dwView with the result of
} // a bitwise AND between dwStyle and
// the Unary complement of LVS_TYPEMASK.
İlgili konular
-
List-View Denetimleri hakkında hakkında
-
List-View Denetimlerini Kullanma