PDA

View Full Version : focus در ListView



Delphi Coder
شنبه 13 بهمن 1386, 02:21 صبح
در شکل ضمیمه دو تا listview رو داریم که focus روی سمت چپی هست و به همین خاطر هم آیتم select شده اون مشخصه حالا اگر بخواهیم روی سمت راستی یه چیزی select بشه دیگه مشخص نیست از اینور چی رو select کرده بودیم فکر میکنم منظورمو رسونده باشم میخوایم یه کاری کنیم listview چه focus باشه چه نباشه item ای که select شده دیده بشه. چه راه حلی برای این مشکل پیشنهاد میکنید؟

Mahmood_M
شنبه 13 بهمن 1386, 05:03 صبح
می تونید در ListView خاصیت CheckNBoxes رو True کنید تا در کنار هر آیتم یک CheckBox نمایش داده بشه و هر بار که میخواید از ListView اول به Listview دوم برید ( OnExit ) ، خاصیت Checked مربوط به آیتم انتخاب شده رو True کنید تا تیک خورده بشه ، این طوری میشه دید کدوم انتخاب شده ، وقتی هم که آیتم جدیدی انتخاب میشه ( در ListView اول ) میتونید اون آیتمی که Checked اون رو True کردید ، دوباره False کنید و آیتم جدید رو تیک بزنید ! ...

موفق باشید ...

Cave_Man
شنبه 13 بهمن 1386, 05:14 صبح
اگه یه راه حل بدون کد نویسی میخای میتونی یه راست بری سراغ ListBox
یعنی به جای ListView از ListBox استفاده کنی چون این کنترل چنین قابلیتی رو داره.

اگر خیلی مصر هستی به استفاده از ListView باید توی OnDraw کد بنویسی

Delphi Coder
شنبه 13 بهمن 1386, 07:33 صبح
می تونید در ListView خاصیت CheckNBoxes رو True کنید تا در کنار هر آیتم یک CheckBox نمایش داده ت. همین mode باید استفاده کنم نمی خوایم CheckBox داشته باشه.

Delphi Coder
شنبه 13 بهمن 1386, 07:40 صبح
اگر خیلی مصر هستی به استفاده از ListView باید توی OnDraw کد بنویسی این 6 تا CustomDraw داره
OnCustomDraw
OnCustomDrawItem
OnCustomDrawSubItem
OnAdvancedCustomDraw
OnAdvancedCustomDrawItem
OnAdvancedCustomDrawSubItem

یکی هم اینو دارهOnCustomDraw
SubItem ها که هیچ. حالا تو کدومش باید کد نوشته بشه و مهمتر اینکه چه کدی.

JAFO_IRAN
شنبه 13 بهمن 1386, 18:27 عصر
سلام

اگر مشخصه HideSelection مساوی False باشه مشکلتون رفع نمیشه؟

ارادت