-
發布於 2015-05-17 14:14:562015-05-17 14:14:56
使用 getSharedPreferences 函數儲存數據。
APP_NAME 改成 想設計的名稱,如:org.twgogo.wbf.Code_.web_browser
public boolean set_config(String str,String name_){
SharedPreferences sharedPref = getSharedPreferences("APP_NAME", MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPref.edit();
editor.putString(name_, str);
editor.apply();
return true;
}
public String read_config(String name_){
SharedPreferences sharedPref = getSharedPreferences("APP_NAME", MODE_PRIVATE);
return sharedPref.getString(name_,"NULL");
}
WeilsNetLogo
This entry was posted in Experience, Functions, Java By Weil Jimmer.
-
發布於 2015-05-13 19:22:042015-05-13 19:22:04
簡言之,RichTextBox 若裡面包含圖片的話(比如用剪貼簿的方法貼上RTF格式圖片),滾動就會顯得很有問題,不管是用右邊的滾動條上鍵、下鍵移動,或是用滑鼠滾輪滾動,都會「快速跳躍圖片」,意指:把圖片當成「一行文字」看待,尤其是當圖片很長(Height大於RichTextBox的高)的時候,而且又多張圖片,快速滾動就有可能發生,但問題是,我去網路上查很多資料都沒查到有什麼方法可以修正,當然是希望能用一行Code,就解決這個問題,不然滾動圖片「咻」一下就不見了,已經滾到最下面了,根本爛透了。
本方法以Vb.net Code為例,原代碼從網路上查到是 C#.Net,但是原代碼是按下按鈕自動平滑滾到最下面,而我這個是依照滑鼠滾輪而去做上下正常平滑滾動,意思是指修正滑鼠的快速滾動問題,稍微修改了原代碼,原本想貼上引用的地址,不過都關掉網頁,懶得查記錄了,好吧,也算是原創,因為有些還是我自己再添加的。
要先創建一個 Timer,代碼中 ID 為「Scroll_timer」。其餘不解釋,看代碼就明白。
Private min, max As Integer
Private pos As Integer = 0
Private endPos As Integer = 0
Private Const SB_HORZ As Integer = &H0
Private Const SB_VERT As Integer = &H1
Private Const WM_HSCROLL As Integer = &H114
Private Const WM_VSCROLL As Integer = &H115
Private Const SB_THUMBPOSITION As Integer = 4
Private Const WM_SETREDRAW As Int32 = &HB
Private scroll_speed As Integer = 20
Private Declare Function SetScrollPos Lib "user32" (hwnd As IntPtr, nBar As Integer, nPos As Integer, bRedraw As Boolean) As Integer
Private Declare Function GetScrollPos Lib "user32" (hwnd As IntPtr, nBar As Integer) As Integer
Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" (hwnd As IntPtr, nBar As Integer, wParam As Integer, lParam As Integer) As Integer
Private Declare Function GetScrollRange Lib "user32" (hwnd As IntPtr, nBar As Integer, ByRef lpMinPos As Integer, ByRef lpMaxPos As Integer) As Boolean
Private Declare Auto Function SendMessage Lib "user32.dll" (ByVal hWnd As IntPtr, ByVal wMsg As Int32, ByVal wParam As IntPtr, ByVal lParam As IntPtr) As IntPtr
Private Sub Scroll_timer_Tick(sender As Object, e As EventArgs) Handles Scroll_timer.Tick
GetScrollRange(RichTextBox1.Handle, SB_VERT, min, max)
max = max - RichTextBox1.ClientSize.Height
pos = GetScrollPos(RichTextBox1.Handle, SB_VERT)
Debug.WriteLine("Max=" & max & "--Min=" & min & "--Current=" & pos)
If Scroll_timer.Tag = "down" Then
If (pos >= endPos) Then
Me.Scroll_timer.Enabled = False
Exit Sub
End If
If endPos >= max Then
endPos = max
End If
pos = pos + scroll_speed
SetScrollPos(RichTextBox1.Handle, SB_VERT, pos, True)
PostMessage(RichTextBox1.Handle, WM_VSCROLL, SB_THUMBPOSITION + &H10000 * pos, 0)
Else
If endPos <= 1 Then
endPos = 1
End If
If (pos <= endPos) Then
Me.Scroll_timer.Enabled = False
Exit Sub
End If
If (pos - scroll_speed) < 1 Then
pos = 0
Else
pos = pos - scroll_speed
End If
SetScrollPos(RichTextBox1.Handle, SB_VERT, pos, True)
PostMessage(RichTextBox1.Handle, WM_VSCROLL, SB_THUMBPOSITION + &H10000 * pos, 0)
End If
End Sub
Private Sub RichTextBox1_MouseWheel_Click(sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles RichTextBox1.MouseWheel
Dim temp As HandledMouseEventArgs = e
temp.Handled = True
Dim temp_pos = GetScrollPos(RichTextBox1.Handle, SB_VERT)
If Scroll_timer.Enabled = True Then
temp_pos = endPos
Else
End If
If e.Delta > 0 Then
Debug.WriteLine("Scrolled up!" & e.Delta)
GetScrollRange(RichTextBox1.Handle, SB_VERT, min, max)
endPos = temp_pos - e.Delta
If endPos <= 1 Then
endPos = 1
End If
Debug.WriteLine(endPos)
Scroll_timer.Tag = "up"
Me.Scroll_timer.Enabled = True
Else
Debug.WriteLine("Scrolled down!" & e.Delta & "--Current: " & temp_pos)
GetScrollRange(RichTextBox1.Handle, SB_VERT, min, max)
max = max - RichTextBox1.ClientSize.Height
If temp_pos + Math.Abs(e.Delta) >= max Then
endPos = max - 1
Else
endPos = temp_pos + Math.Abs(e.Delta) - 1
End If
Debug.WriteLine(endPos)
Scroll_timer.Tag = "down"
Me.Scroll_timer.Enabled = True
End If
End Sub
WeilsNetLogo
This entry was posted in Functions, VB.NET By Weil Jimmer.
-
2015-05-13 19:08:49更新於 2015-05-13 19:11:01
我就直接說白了,不管別人怎麼想。
第一,要自己準備食材,很麻煩!要就學校準備準備就好啊,大不了,學生交材料費。這樣我也可以接受,但是要自己準備?學校就已經夠多考試了,還哪來的時間去幹這種無意義的事情。我寧願寫程式也不想去買食材。尤其是我更不想,向家人討錢,更不想向別人託付去購買什麼跟什麼。
第二,我感覺,有沒有我的存在也沒多大差別。
第三,結束後,又是正課,主科,被家政給拖到,很討厭,還經常遲到!要嫌因為動作慢嗎?我想:如果沒有家政課,就沒有這些鳥事。
跟,體育課差不多,但我還可以容忍體育課。只要不是被老師操就還好。
哀,即使是在班上前幾名也不免引來不少傷感,一點都不因此而感到太多的愉快,也許會因為成績的好而感到開心,不過也只有一下下而已,甚至幾分鐘不到就結束了。
我憂的是將來…憂的是現實……
WeilsNetLogo
This entry was posted in Mood By Weil Jimmer.
-
2015-05-11 20:31:13更新於 2017-04-24 22:44:55
This entry was posted in Product, Tools By Weil Jimmer.
-
2015-05-11 20:29:02更新於 2017-01-20 19:48:50
This entry was posted in Product, Tools By Weil Jimmer.