Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > .NET Framework > Forum > [ASP.NET] Listbox กับ เรื่องเวลาครับ



 

[ASP.NET] Listbox กับ เรื่องเวลาครับ

 



Topic : 128967



โพสกระทู้ ( 171 )
บทความ ( 0 )



สถานะออฟไลน์




อยากให้ Item ใน Listbox บอกเวลาปัจจุบันได้ครับ แต่อยากให้แต่ละ Item มีเวลาห่างกันครับ แล้วแต่เราจะกำหนด เช่น

Item 1 = 15.00
Item 2 = 15.10
Item 3 = 15.20

ตัวอย่างนี้ แต่ละไอเทมจะห่างกัน 10 นาที


Code (ASP)
Protected Sub Timer1_Tick(ByVal sender As Object, ByVal e As EventArgs) Handles Timer1.Tick

 For i = 0 To 5
                ListCall.Items.Add(ListQw.Items.Item(i).ToString & " - " & Format(Date.Now(), "HH:mm tt"))
            Next
Sub




Tag : .NET, Web (ASP.NET), VB.NET









ประวัติการแก้ไข
2017-09-21 15:22:42
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2017-09-21 15:21:57 By : meatspin View : 1040 Reply : 12
 

 

No. 1



โพสกระทู้ ( 9,556 )
บทความ ( 2 )



สถานะออฟไลน์


หาค่า ตั้งต้นอันแรก จากเวลาปัจจุบันให้ได้ก่อน แล้วค่อยวนลูปจากค่าตั้งตนนั้น






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-09-21 15:40:55 By : Chaidhanan
 


 

No. 2



โพสกระทู้ ( 280 )
บทความ ( 0 )



สถานะออฟไลน์


timer มันเป็น loop อยู่แล้ว เราไม่ต้องไป loop กะมันนะครับ

ลองแบบนี้ดู

Code (VB.NET)
Dim i  As Integer = 0 
Protected Sub Timer1_Tick(ByVal sender As Object, ByVal e As EventArgs) Handles Timer1.Tick

If i <6 then
    ListCall.Items.Add(ListQw.Items.Item(i).ToString & " - " & Format(Date.Now(), "HH:mm tt"))
End IF
Sub


ปล. Intervel = 10*60*1000 = 600000 นะครับ (10 นาที)
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-09-21 16:04:29 By : ชื่อ
 

 

No. 3



โพสกระทู้ ( 171 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 2 เขียนโดย : ชื่อ เมื่อวันที่ 2017-09-21 16:04:29
รายละเอียดของการตอบ ::
ไม่ใช่ครับ ที่ลูปเห็นคือ เป็นการเอา Item จากอีก listbox หนึ่งมาใส่เฉยๆ โดยเลือกจำนวนจาก listbox แรกครับ



ประวัติการแก้ไข
2017-09-21 16:11:18
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-09-21 16:08:45 By : meatspin
 


 

No. 4



โพสกระทู้ ( 280 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 3 เขียนโดย : meatspin เมื่อวันที่ 2017-09-21 16:08:45
รายละเอียดของการตอบ ::
ของแบบนี้ต้องลองครับ

แต่มันจะได้แค่ 5 นะครับ(เพราะ<6 ไว้)

อาจจะต้องดักด้วย ListQw.Items.Count จะกลายเป็นว่า

Code (VB.NET)
Dim i  As Integer = 0 
Protected Sub Timer1_Tick(ByVal sender As Object, ByVal e As EventArgs) Handles Timer1.Tick

'แบบนี้จะได้ว่า ListCall เพิ่มเรื่อยๆจน จำนวนเท่ากับ ListQw ในทุกๆ 10 นาที
If i <ListQw.Items.Count  then 
    ListCall.Items.Add(ListQw.Items.Item(i).ToString & " - " & Format(Date.Now(), "HH:mm tt"))
    i=i+1
Else
  Timer1.Enabled = False
End IF
Sub





แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-09-21 16:23:07 By : ชื่อ
 


 

No. 5



โพสกระทู้ ( 171 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 4 เขียนโดย : ชื่อ เมื่อวันที่ 2017-09-21 16:23:07
รายละเอียดของการตอบ ::
ขอบคุณครับ พอเข้าใจแล้ว แต่อยากได้วิธีการบวกเวลา สมมุติ item ตัวแรก คือเวลา 14.00 เรากำหนดว่าแต่ละไอเทมห่างกัน 1ชั่วโมง item ตัวต่อมาก็ต้องขึ้นเป็น 15.00

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-09-21 16:40:13 By : meatspin
 


 

No. 6



โพสกระทู้ ( 280 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 5 เขียนโดย : meatspin เมื่อวันที่ 2017-09-21 16:40:13
รายละเอียดของการตอบ ::
ตั้งที่ Intervel ได้เลย แต่ผมก็ไม่รู้จะครับว่ามีค่าสูงสุดไม๊
อย่างเราตั้ง

1*60*60*1000= 3600000 = 1 hr(รึป่าว 5555)

มันก็จะทำงานให้เราทุก 1 ชม.( หมายความว่า 1 ชม. ก็เพิ่ม 1 item)

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-09-21 16:47:41 By : ชื่อ
 


 

No. 7



โพสกระทู้ ( 171 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 6 เขียนโดย : ชื่อ เมื่อวันที่ 2017-09-21 16:47:41
รายละเอียดของการตอบ ::
มันแปลงเป็นรูปแบบเวลาได้ไหม เพราะผมต้องเอาไปโชว์ใน listbox

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-09-21 16:50:07 By : meatspin
 


 

No. 8



โพสกระทู้ ( 280 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 7 เขียนโดย : meatspin เมื่อวันที่ 2017-09-21 16:50:07
รายละเอียดของการตอบ ::
Intervel ไม่ใช่เวลานะครับ

เวลาก็ใช้ Format(Date.Now(), "HH:mm tt") เหมือนเดิมละครับ

555

ไอ้ผมก็จบเคมีมา ไม่ได้เรียนเกี่ยวกับเขียนโปรแกรมเลยไม่รู้จะอธิบายออกมาเป็นภาษาโปรแกรมเมอร์ได้ยังไง
เอาเป็นว่า
Intervel คือ ความถี่หรือค่าหน่วง ให้ timer มันทำงานน่ะครับ มีหน่วยเป็น ms(มิลลิวินาที)

อย่างผมตั้งไว้ 60000(60 s>>1 min)
มันก็จะทำงานตามที่เราเขียนโค้ดใน Timer1_Tick ทุก 1 นาที
อย่างตอนนี้ มันทำงานไปแล้วช่าง 16.52 ต่อไปมันจะทำงาน 16.53

ถ้าเราเปลี่ยนเป็น 3600000 = 1 hr ต่อไปมันจะทำงาน 17.53

ประมาณนี้ละครับ

ถ้าเราไม่ปิดโดย
Timer1.Enabled = False

มันก็จะทำงานเรื่อยๆนะครับ อย่าลืมซะละ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-09-21 16:58:59 By : ชื่อ
 


 

No. 9



โพสกระทู้ ( 171 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 8 เขียนโดย : ชื่อ เมื่อวันที่ 2017-09-21 16:58:59
รายละเอียดของการตอบ ::
ขอบคุณครับ ว่าแต่ Format(Date.Now(), "HH:mm tt") นี่สามารถนำมาบวกได้ไหมครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-09-21 17:07:03 By : meatspin
 


 

No. 10



โพสกระทู้ ( 280 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 9 เขียนโดย : meatspin เมื่อวันที่ 2017-09-21 17:07:03
รายละเอียดของการตอบ ::
ได้อยู่แล้วครับ

แต่ อย่าลืมจุดหนึ่งนะครับ

Date.Now()


ตอนนี้ Date.Now() = 17.07

อยากถามว่าถ้าผมใช้ Intervel =180,000

ผมอยากถามว่า timer จะทำงานครั้งต่อไป เวลาเท่าไหร่
แล้ว Date.Now() = เท่าไหร่

ถ้าตอบได้ ก็ง่ายขึ้นครับ

ลองๆคิดดู

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-09-21 17:15:21 By : ชื่อ
 


 

No. 11



โพสกระทู้ ( 9,556 )
บทความ ( 2 )



สถานะออฟไลน์


ไม่เข้าใจ ทำ listbox โดยไม่ต้องใช้ loop

เวลาตั้งตน = เวลาปัจจุบัน - ( จำนวนelement / 2 * จำนวนนาที)
add เวลาตั้งต้นเข้าลิสต์

ลูป:
เวลาตั้งต้น += จำนวนนาที
add เวลาตั้งต้นเข้าลิสต์
ถ้า element ครบแล้วออกจากลูป
กลับไปลูปจนครบ

มันทำไม่ได้ยังไง งงครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-09-21 18:18:11 By : Chaidhanan
 


 

No. 12



โพสกระทู้ ( 280 )
บทความ ( 0 )



สถานะออฟไลน์


Code (VB.NET)
Protected Sub Timer1_Tick(ByVal sender As Object, ByVal e As EventArgs) Handles Timer1.Tick

 For i = 0 To 5
                ListCall.Items.Add(ListQw.Items.Item(i).ToString & " - " & Format(Date.Now(), "HH:mm tt"))
            Next
Sub


หากเราตั้ง Intervel 600000

เราจะพบว่าทุกๆ 10 นาที ListCall จะ Add Item มา 6 Item เวลาเดียวกัน

จากโจทย์ บอกว่า


Item 1 = 15.00
Item 2 = 15.10
Item 3 = 15.20


หมายความว่า ทุกๆ 10 นาที ให้เพิ่มมา 1 Item
เพราะงั้น การตัด for loop ออกแล้วไปเล่นกับ Intervel เป็นวิธีการที่ถูกต้องและ ง่ายที่สุด

ปล. อย่างงระหว่าง loop/timer เพราะมันทำหน้าที่คล้ายๆกัน
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-09-22 10:02:09 By : เด็กดอย
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : [ASP.NET] Listbox กับ เรื่องเวลาครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 05
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่