브라우저 동작 간소화

This commit is contained in:
2016-12-06 10:24:19 +09:00
parent 9ceb78f872
commit 958f523b9c

View File

@@ -26,6 +26,7 @@ namespace NewsCrawler
System.Timers.Timer m_CrawlTimer = new System.Timers.Timer();
int m_iCrawlInterval = 500;
bool m_bBrowserReload = false;
@@ -134,12 +135,9 @@ namespace NewsCrawler
lvList.Items.Add(new ListViewItem(new string[] { time.ToString("HH:mm:ss"), strTitle, strRef, strURL }));
if(chAutoSelect.Checked == true)
if(bInitial == false && chAutoSelect.Checked == true)
{
lvList.Items[lvList.Items.Count - 1].Selected = true;
lvList.Select();
if(lvList.SelectedItems.Count > 0)
lvList.SelectedItems[0].EnsureVisible();
m_bBrowserReload = true;
}
foreach(ColumnHeader col in lvList.Columns)
@@ -539,6 +537,29 @@ namespace NewsCrawler
return bHasNew;
}
private void UpdateBrowser()
{
if(lvList.InvokeRequired == true)
{
lvList.Invoke(new Action(UpdateBrowser));
}
else
{
if(chAutoSelect.Checked == true && m_bBrowserReload == true)
{
if(lvList.SelectedItems.Count == 0 || lvList.SelectedItems[0].Index != lvList.Items.Count-1)
{
lvList.Items[lvList.Items.Count - 1].Selected = true;
lvList.Select();
if(lvList.SelectedItems.Count > 0)
lvList.SelectedItems[0].EnsureVisible();
}
m_bBrowserReload = false;
}
}
}
private void CrawlTimer_Tick(object sender, EventArgs e)
{
m_CrawlTimer.Enabled = false;
@@ -554,6 +575,8 @@ namespace NewsCrawler
ReadFinacialNews();
}
UpdateBrowser();
m_CrawlTimer.Interval = m_iCrawlInterval;
m_CrawlTimer.Enabled = true;
}