![]() ![]() ![]() ![]() |
|||||
|
|||||
樓主 黑熊 ![]()
![]() |
我試過下面兩個都沒辦法 ListView1.Items(x).Checked = True ListView1.Items(x).Selected = True 下面的程式是用來測試我想要的功能 Form1預設Listview參數 Button1加入資料 Button2顯示目前選取的Index |
1樓 |
如果我沒有猜錯,改成這樣就可以了
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click Dim x As Integer = ListView1.FocusedItem.Index Button2.Text = x ListView1.Focus() ' ListView1.Items(x).Checked = True ' ListView1.Items(x).Selected = True End Sub
本篇文章回覆於2018-04-04 23:06
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
2樓 |
標題 [Listview 預設選取某行] 和內文 [Listview要怎麼用程式碼反白其中的某行資料呢] 並不同? 若從程式碼猜測, 似乎是因為焦點移到 Button2, 所以 ListView1 就沒有顯示反白選取, 而目的是希望 [按下 Button2 後仍要能看到 ListView1 反白選取項目]? 若是的話, 將焦點再移回 ListView1 就可以了, 例如: 以上猜測...
本篇文章回覆於2018-04-04 23:11
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
3樓 |
2樓同1樓的意思. 打字慢了幾分鐘...
本篇文章回覆於2018-04-04 23:15
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
4樓
作者回應
黑熊 ![]() |
抱歉,我敘述問題的邏輯不太精準....
依照兩位的說法把焦點移回Listview後再加上 ListView1.Items(x).Selected = True 後可以完成我想達成的目標,感謝你們的解答 但因為先點了Button後才將焦點移回Liwtview所以點選的會先暫時回到原本的狀態,待程式碼執行之後才會繼續反白 我想達成的目標是在使用者點選LIstview的某行後,可以點選Button進行某行資料的上移、下移或刪除 但在執行這些動作時希望反白區域可以持續留在Listview上,不要讓使用者每做一次動作都要再重點一次 我用ListBox的時候不用特別取回焦點"Listbox.focus()"也可以有同樣的效果,而且也不會閃一下 為什麼用Listview就會這樣呢,是我忽略了什麼地方嗎?
本篇文章回覆於2018-04-05 00:01
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
5樓 |
屬性表的 Hideselection 設為 False 就可以顯示了
只是顯示的顏色是灰色的,您要再試一下
本篇文章回覆於2018-04-05 07:44
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
6樓
作者回應
黑熊 ![]() |
依照 P陳 大大說的測試了一下,是可以讓顯示使用焦點留在Listview上,不過變沒辦法維持藍色有點可惜
我原本是用Lisrbox顯示資料,但我的資料是用好幾個陣列的字串兜起來的,每個字串長度不一致,所以在顯示時沒辦法對其,看起來有點礙眼 後來看到Listview可以做欄位分隔,而且功能和Listbox相似,所以想說用這個試試看,不過可惜的雖然資料排序比較整齊了,但如果點選其他物件沒辦法像Listbox那樣保留焦點 現在變成一個二選一的情境了 Listbox: 優勢->可以再點選其他物件時保留焦點(反白區域) 劣勢->多組字串放入同一行時如果有很多行的資料會看起來不太整齊 Listview: 優勢->可以依照使用情境設定Columns數量和寬度,保證每行的多筆資料的可以整齊排序 劣勢->點選其他物件會遺失焦點 1.先用Focus()再用ListView1.Items(x).Selected = True可繼續反白,但是會閃一下 2.Hideselection設定為False可以持續顯示,但會變成灰色,不是非常醒目
本篇文章回覆於2018-04-05 11:45
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
7樓 |
其實您還可以有一個選擇
datagridview
本篇文章回覆於2018-04-05 12:28
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
8樓
最有價值解答
P陳 ![]() |
搞定了
與是否設定 Hideselection 無關 Private Sub ListView1_Leave(sender As Object, e As EventArgs) Handles ListView1.Leave ListView1.Focus() End Sub 參考網站 https://stackoverflow.com/questions/5179664/how-to-change-listview-selected-row-backcolor-even-when-focus-on-another-control
本篇文章回覆於2018-04-05 12:39
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
9樓
作者回應
黑熊 ![]() |
又學到一招了,感謝 P陳 大大!!!
本篇文章回覆於2018-04-05 15:45
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
10樓 |
下載的 24節氣的黑熊是您這位黑熊嗎?
與香港氣像局的資料2分以內的誤差。 之前要學八字時,一直在找這個計算公式,後來八字沒學了,這個也沒找了
本篇文章回覆於2018-04-05 21:26
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
11樓 |
HP 都是47 就是您沒錯了
本篇文章回覆於2018-04-05 21:27
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
12樓
作者回應
黑熊 ![]() |
對啊 是那我寫的
之前想寫工資計算的程式,但是一直卡在清明節日期飄忽不定寫不出來 找了很多資料才偶然間發現這個計算公式,話說這公式還真是稀有啊 網路上一堆似是而非的算法,真的讓人有看沒有懂,花了好多時間才找出一個看得懂的 天文與曆法
本篇文章回覆於2018-04-05 21:54
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
13樓
作者回應
黑熊 ![]() |
程式在追加功能的時候遇到問題,如果寫成ListView焦點遺失時繼續鎖定焦點"ListView1.Focus()"
其他按鈕雖然可以按,但是像TextBox這種要寫入資料的物件就無法使用了 所以還是只能用Hideselection屬性..........
本篇文章回覆於2018-04-10 11:20
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
回覆 |
如要回應,請先登入. |