ฟอรั่มของบล็อก http://pssix.blogspot.com


การ เขียน และอ่านไฟล์... ช่วยดูสคริปผมหน่อยครับ

Share

chaodroger
PSsix Member Class II
PSsix Member Class II


จำนวนข้อความ : 30
ความนิยม : 0
เข้าร่วมเมื่อ : 30/12/2013

การ เขียน และอ่านไฟล์... ช่วยดูสคริปผมหน่อยครับ

ตั้งหัวข้อ by chaodroger on 27/02/14, 06:55 pm

Code:
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
Opt("GUIOnEventMode", 1)

Global $start = 0

$Form1 = GUICreate("Form1", 159, 330, 385, 140)
GUISetOnEvent($GUI_EVENT_CLOSE, "Form1Close")
$Input1 = GUICtrlCreateInput("", 16, 24, 121, 21)
$Checkbox1 = GUICtrlCreateCheckbox("Checkbox1", 24, 64, 97, 17)
$Radio1 = GUICtrlCreateRadio("Radio1", 24, 88, 113, 17)
$Radio2 = GUICtrlCreateRadio("Radio2", 24, 112, 113, 17)
$Combo1 = GUICtrlCreateCombo("", 16, 136, 121, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
$Button1 = GUICtrlCreateButton("Write", 32, 192, 75, 25)
GUICtrlSetOnEvent(-1, "write_Button")
$Button2 = GUICtrlCreateButton("Load", 32, 232, 75, 25)
GUICtrlSetOnEvent(-1, "load_Button")
GUISetState(@SW_SHOW)

GUICtrlSetData($Combo1, "AA|BB|CC")

Func write_Button()
   $start = 1
EndFunc

Func load_Button()
   $start = 2
   EndFunc

While 1

Select
   Case $start = 1
      write()
   Case $start = 2
      load()

   EndSelect
WEnd


Func write()

    IniWrite("Settings.ini", "Data", "Input1", GUICtrlRead($Input1))
    IniWrite("Settings.ini", "Data", "Checkbox1", GUICtrlRead($Checkbox1))
    IniWrite("Settings.ini", "Data", "Radio1", GUICtrlRead($Radio1))
    IniWrite("Settings.ini", "Data", "Radio2", GUICtrlRead($Radio2))
   IniWrite("Settings.ini", "Data", "Combo1", GUICtrlRead($Combo1))

EndFunc

Func load()

    GUICtrlSetData($Input1, IniRead("Settings.ini", "Data", "Input1", ""))
    GUICtrlSetData($Checkbox1, IniRead("Settings.ini", "Data", "Checkbox1", ""))
    GUICtrlSetData($Radio1, IniRead("Settings.ini", "Data", "Radio1", ""))
    GUICtrlSetData($Radio2, IniRead("Settings.ini", "Data", "Radio2", ""))
   GUICtrlSetData($Combo1, IniRead("Settings.ini", "Data", "Combo1", ""))

EndFunc




Func Form1Close()
exit
EndFunc

ช่องรับ ข้อมูลจะมี ดังนี้ครับ

Input1
Checkbox1
Radio1
Radio2
Combo1


พอผมเขียนข้อมูลลงทุกช่องแล้ว กด Write มันจะบันทึกเป็นไฟล์ไว้ครับ


พอผม กด Load มันจะอ่านไฟล์ที่ ผมบันทึกไว้

ช่อง Input1 และ Combo1 การอ่านไฟล์ ถูกต้องนะครับ
แต่ช่อง


Checkbox1 ,Radio1 ,Radio2  การอ่านไฟล์ดูจะผิดเพี้ยนไป อ่ะครับ

ผมว่าผมคงใช้คำสั่งผิดแน่ๆเลย ช่วยแนะนำหน่อยนะครับ

ปล.ขอบคุณครับผม

Arm
PSsix Member Super Class III
PSsix Member Super Class III

PSsix Master PSsix Program Coder
จำนวนข้อความ : 267
ความนิยม : 54
เข้าร่วมเมื่อ : 31/03/2011
อายุ : 19

Re: การ เขียน และอ่านไฟล์... ช่วยดูสคริปผมหน่อยครับ

ตั้งหัวข้อ by Arm on 27/02/14, 08:00 pm

ได้ประมาณนี้ครับ
Code:
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
Opt("GUIOnEventMode", 1)

;~ Global $start = 0

$Form1 = GUICreate("Form1", 159, 330, 385, 140)
GUISetOnEvent($GUI_EVENT_CLOSE, "Form1Close")
$Input1 = GUICtrlCreateInput("", 16, 24, 121, 21)
$Checkbox1 = GUICtrlCreateCheckbox("Checkbox1", 24, 64, 97, 17)
$Radio1 = GUICtrlCreateRadio("Radio1", 24, 88, 113, 17)
$Radio2 = GUICtrlCreateRadio("Radio2", 24, 112, 113, 17)
$Combo1 = GUICtrlCreateCombo("", 16, 136, 121, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
$Button1 = GUICtrlCreateButton("Write", 32, 192, 75, 25)
GUICtrlSetOnEvent(-1, "write_Button")
$Button2 = GUICtrlCreateButton("Load", 32, 232, 75, 25)
GUICtrlSetOnEvent(-1, "load_Button")
GUISetState(@SW_SHOW)

GUICtrlSetData($Combo1, "AA|BB|CC")

Func write_Button()
  write()
EndFunc

Func load_Button()
  load()
EndFunc

While Sleep(100)
WEnd

Func write()
   If BitAnd(GUICtrlRead($Checkbox1),$GUI_CHECKED) Then
      $cb = 1
   Else
      $cb = 0
   EndIf
   If BitAnd(GUICtrlRead($Radio1),$GUI_CHECKED) Then
      $ra1 = 1
   Else
      $ra1 = 0
   EndIf
   If BitAnd(GUICtrlRead($Radio2),$GUI_CHECKED) Then
      $ra2 = 1
   Else
      $ra2 = 0
   EndIf
    IniWrite("Settings.ini", "Data", "Input1", GUICtrlRead($Input1))
    IniWrite("Settings.ini", "Data", "Checkbox1", $cb)
    IniWrite("Settings.ini", "Data", "Radio1", $ra1)
    IniWrite("Settings.ini", "Data", "Radio2", $ra2)
  IniWrite("Settings.ini", "Data", "Combo1", GUICtrlRead($Combo1))

EndFunc

Func load()
   If IniRead("Settings.ini", "Data", "Checkbox1", "") = 1 Then
      $cb = $GUI_CHECKED
   Else
      $cb = $GUI_UNCHECKED
   EndIf
   If IniRead("Settings.ini", "Data", "Radio1", "") = 1 Then
      $ra1 = $GUI_CHECKED
   Else
      $ra1 = $GUI_UNCHECKED
   EndIf
   If IniRead("Settings.ini", "Data", "Radio2", "") = 1 Then
      $ra2 = $GUI_CHECKED
   Else
      $ra2 = $GUI_UNCHECKED
   EndIf
    GUICtrlSetData($Input1, IniRead("Settings.ini", "Data", "Input1", ""))
    GUICtrlSetState($Checkbox1, $cb)
    GUICtrlSetState($Radio1, $ra1)
    GUICtrlSetState($Radio2, $ra2)
   $def = IniRead("Settings.ini", "Data", "Combo1", "")
  GUICtrlSetData($Combo1, $def,$def)

EndFunc




Func Form1Close()
exit
EndFunc

chaodroger
PSsix Member Class II
PSsix Member Class II


จำนวนข้อความ : 30
ความนิยม : 0
เข้าร่วมเมื่อ : 30/12/2013

Re: การ เขียน และอ่านไฟล์... ช่วยดูสคริปผมหน่อยครับ

ตั้งหัวข้อ by chaodroger on 27/02/14, 10:23 pm

ขอบคุณครับ >//<

    เวลาขณะนี้ 23/02/17, 07:20 am