在官網上有開發的實例及源碼可以下載。地址:http://www.thinkphp.cn/case/index.html。
⑵ 能給我發個VB與三菱PLC通訊的源代碼實例嗎,非常感謝啊
得說明是什麼型號的PLC啊,串口還是網口,VB6還是VB.NET?
算了,寫段代碼,VB.NET與Q系列乙太網通訊的:
ImportsSystem.Net
ImportsSystem.Runtime.InteropServices
PublicClassForm1
DimHandle1AsInt32
DimEntLink1AsBoolean
DimScanCount1AsLong
DimPLCAsNewEntQsPlc_Asc.PlcClient'EntQsPlc_ASC.DLL是Q系列乙太網通訊組件
"winmm.dll"()AsUInt32
PrivateSubForm1_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.Load
Me.CenterToScreen()
cmbReadMry.Items.Clear()
cmbReadMry.Items.Add("X")
cmbReadMry.Items.Add("Y")
cmbReadMry.Items.Add("M")
cmbReadMry.Items.Add("D")
cmbReadMry.Items.Add("R")
cmbReadMry.Items.Add("Z")
'
cmbWriteMry.Items.Clear()
cmbWriteMry.Items.Add("X")
cmbWriteMry.Items.Add("Y")
cmbWriteMry.Items.Add("M")
cmbWriteMry.Items.Add("D")
cmbWriteMry.Items.Add("R")
cmbWriteMry.Items.Add("Z")
'
cmbBitMry.Items.Clear()
cmbBitMry.Items.Add("X")
cmbBitMry.Items.Add("Y")
cmbBitMry.Items.Add("M")
'
cmbReadType.Items.Clear()
cmbReadType.Items.Add("INT16")
cmbReadType.Items.Add("UINT16")
cmbReadType.Items.Add("DINT32")
cmbReadType.Items.Add("HEX32")
cmbReadType.Items.Add("REAL32")
cmbReadType.Items.Add("BIN16")
'
cmbWriteType.Items.Clear()
cmbWriteType.Items.Add("INT16")
cmbWriteType.Items.Add("UINT16")
cmbWriteType.Items.Add("DINT32")
cmbWriteType.Items.Add("HEX32")
cmbWriteType.Items.Add("REAL32")
cmbWriteType.Items.Add("BIN16")
cmbReadMry.SelectedIndex=3
cmbWriteMry.SelectedIndex=3
cmbBitMry.SelectedIndex=2
cmbReadType.SelectedIndex=0
cmbWriteType.SelectedIndex=0
lstRead.Items.Clear()
txtWrite.Text=""
'
cmbCmdType.SelectedIndex=0
EndSub
PrivateSubbutLink_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesbutLink.Click
DimreAsShort
DimrestrAsString=""
re=PLC.EntLink(Trim(txtLocalIP.Text),Val(txtLocalPort.Text),Trim(txtRemoteIP.Text),Val(txtRemotePort.Text),"DEMO",Handle1,1000,CBool(cmbCmdType.SelectedIndex))
txtReLink.Text=re.ToString
Ifre=0Then
EntLink1=True
MsgBox("PLC聯接成功!")
Else
EntLink1=False
MsgBox("PLC聯接失敗:"&restr)
EndIf
EndSub
PrivateSubbutClose_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesbutClose.Click
DimreAsShort
IfNotEntLink1Then
MsgBox("還未與PLC建立聯接!")
ExitSub
EndIf
re=PLC.DeLink(Handle1)
txtReClose.Text=re.ToString
EndSubPrivateSubbutRead_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesbutRead.Click
DimreAsShort
DimiAsShort
DimRD()AsObject
ReDimRD(Val(txtReadCnt.Text-1))
IfNotEntLink1Then
MsgBox("還未與PLC建立聯接!")
'ExitSub
EndIf
DimmryAsEntQsPlc_Asc.PlcClient.PlcMemory=cmbReadMry.SelectedIndex+1
DimtypAsEntQsPlc_Asc.PlcClient.DataType=cmbReadType.SelectedIndex+1
re=PLC.CmdRead(Handle1,mry,typ,CInt(txtReadAdd.Text),CUShort(txtReadCnt.Text),RD)
txtReRead.Text=re.ToString
lstRead.Items.Clear()
Fori=0ToUBound(RD)Step1
IfNotIsNothing(RD(i))ThenlstRead.Items.Add(RD(i))
Nexti
Ifre<>0Then
Timer1.Enabled=False
butScan.Text="CycleR/W"
EndIf
EndSubPrivateSubbutWrite_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesbutWrite.Click
DimreAsShort
DimiAsShort
Dimtemp()AsString
DimWD()AsObject
IfNotEntLink1Then
MsgBox("還未與PLC建立聯接!")
ExitSub
EndIf
ReDimWD(Val(txtWriteCnt.Text)-1)
temp=Split(txtWrite.Text,vbCrLf)
Fori=0ToUBound(WD)Step1
Ifi>UBound(temp)Then
WD(i)=0
Else
WD(i)=Trim(temp(i))
EndIf
Nexti
DimmryAsEntQsPlc_Asc.PlcClient.PlcMemory=cmbWriteMry.SelectedIndex+1
DimtypAsEntQsPlc_Asc.PlcClient.DataType=cmbWriteType.SelectedIndex+1
re=PLC.CmdWrite(Handle1,mry,typ,CInt(txtWriteAdd.Text),CUShort(txtWriteCnt.Text),WD)
txtReWrite.Text=re.ToString
Ifre<>0Then
Timer1.Enabled=False
butScan.Text="CycleR/W"
EndIf
EndSub
PrivateSubbutScan_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesbutScan.Click
IfNotEntLink1Then
MsgBox("還未與PLC建立聯接!")
ExitSub
EndIf
Timer1.Enabled=NotTimer1.Enabled
IfTimer1.EnabledThen
ScanCount1=0
butScan.Text="StopR/W"
Else
butScan.Text="CycleR/W"
EndIf
EndSubPrivateSubTimer1_Tick(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesTimer1.Tick
Timer1.Enabled=False
DimtimAsInteger=timeGetTime
IfNotEntLink1Then
MsgBox("還未與PLC建立聯接!")
ExitSub
EndIf
'
CallbutRead_Click(Nothing,Nothing)
CallbutWrite_Click(Nothing,Nothing)
'
If(Val(txtReRead.Text)<0)Or(Val(txtReWrite.Text)<0)Then
butScan.Text="CycleR/W"
ExitSub
Else
ScanCount1+=1
txtScanCnt.Text=ScanCount1
txtScanPrd.Text=(timeGetTime-tim)&"ms"
EndIf
Timer1.Enabled=True
EndSub
PrivateSubbutBitTest_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesbutBitTest.Click
IfNotEntLink1Then
MsgBox("還未與PLC建立聯接!")
ExitSub
EndIf
DimrdAsBoolean
DimreAsShort
DimmryAsEntQsPlc_Asc.PlcClient.PlcMemory=cmbBitMry.SelectedIndex+1
re=PLC.Bit_Test(Handle1,mry,CUShort(txtBitAdd.Text),rd)
txtBitTest.Text=rd
txtReBit.Text=re
EndSub
PrivateSubbutBitSet_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesbutBitSet.Click
IfNotEntLink1Then
MsgBox("還未與PLC建立聯接!")
ExitSub
EndIf
DimreAsShort
re=PLC.Bit_Set(Handle1,cmbBitMry.SelectedIndex+1,Val(txtBitAdd.Text))
txtReBit.Text=re
EndSubPrivateSubbutBitRst_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesbutBitRst.Click
IfNotEntLink1Then
MsgBox("還未與PLC建立聯接!")
ExitSub
EndIf
DimreAsShort
re=PLC.Bit_Reset(Handle1,cmbBitMry.SelectedIndex+1,Val(txtBitAdd.Text))
txtReBit.Text=re
EndSub
EndClass
⑶ 求一個基於Java編寫的醫院預約系統源碼
摘 要
進入21世紀以來,網路的空前發展給人們的工作和生活帶來了極大的便利,信息化建設已經成為節約運營成本、提高工作效率的首選。相比之下,國內相當數量的中小醫院的醫院預約掛號工作還採用相對保守的手工工作方式,數據信息查詢和存儲的成本較高,但效率卻很低下。為了使醫院預約掛號管理更高效、更科學,決定開發醫院預約掛號平台。
本文採用結構化分析的方法,詳細闡述了一個功能比較強大的醫院預約掛號平台的前後台開發、操作流程和涉及的一些關鍵技術。首先進行了可行性分析,然後是系統分析,通過實際的業務流程調研,分析業務流程和系統的組織結構,完成了數據流分析和數據字典;然後是系統設計階段主要完成了功能模塊的劃分、闡述了系統設計的思想、資料庫的設計和系統設計的工具及技術。該階段對本系統各個模塊的功能進行了詳細設計,形成了本系統的功能模塊圖;資料庫設計時先進行了概念結構設計,然後進行了邏輯結構設計,最後完成了數據表的設計。
根據前幾個階段的分析和設計,本系統在設計方面採用B/S模式,同時使用JSP技術進行基本頁面的設計與功能實現,後台資料庫選用SQL Server 2000資料庫。本系統的設計實施為醫院預約掛號系統的運行做基礎,為醫院預約掛號管理工作提供良好的條件。
關鍵詞:預約掛號;結構化分析;平台
Abstract
In the 21st century, the unprecedented development of the network to the people's work and life has brought great convenience, information technology has become operational cost savings, improve efficiency of choice. In contrast, a considerable number of domestic small and medium hospitals, hospital appointment registration work is relatively conservative with manual work, data query and the high cost of storage, but the efficiency is very low. To make an appointment by registered hospital management more efficient, more science, decided to develop the hospital appointment registration platform.
In this paper, structural analysis, a function described in detail more powerful platform for the hospital before and after the appointment register sets and development, operational processes, and some of the key technologies involved. First, a feasibility analysis, and system analysis, business process through the actual research, analyze business processes and organizational structure of the system to complete the data flow analysis and data dictionary; then completed the system design phase is mainly divided into functional moles, elaborated the idea of the system design, database design and system design tools and techniques. This phase of the system function of each mole in detail the design, forming a functional block diagram of the system; database design first tested the concept design, followed by a logic design, and finally completed the data table design.
According to the first few stages of the analysis and design, the system used in the design of B / S mode, JSP technology, the basic page design and implementation of function, use SQL Server 2000 database backend database. Implementation of the system design registration system for the operation of the hospital appointment as a foundation for the hospital management to provide a good appointment registration conditions.
Key Words:Appointment registration; structural analysis; platform
目 錄
摘 要... I
Abstract II
一、引言... 1
(一)項目開發的背景... 1
(二)項目開發的目的... 1
二、可行性分析及總體設計原則... 2
(一)可行性分析... 2
1.技術可行性... 2
2.經濟可行性... 2
3.社會可行性... 3
(二)總體設計原則... 3
三、系統分析... 5
(一)業務流程分析... 5
(二)數據流圖... 6
(三)數據字典... 9
四、系統設計... 13
(一)系統功能設計... 13
(二)系統資料庫設計... 14
1.概念結構設計... 14
2.邏輯結構設計... 18
3.資料庫表設計... 18
(三)系統開發工具與開發模式的選擇... 20
1.系統開發工具... 20
2.系統設計模式... 21
五、系統實現... 22
(一)用戶模塊... 22
1.登錄及注冊管理模塊... 22
2.首界面... 23
3.用戶注冊界面... 24
4.公告界面... 25
5.科室預約界面... 26
6.留言界面... 27
(三)管理員模塊... 28
1.登錄界面... 28
2.科室管理界面... 28
3.添加專家界面... 29
六、性能測試與分析... 30
(一)測試的重要性... 30
(二)測試實例的研究與選擇... 30
(三)測試環境與測試條件... 31
(四)實例測試... 32
(五)系統評價... 32
(六)測試結果... 33
參 考 文 獻... 35
致 謝... 36
⑷ 求C#與三菱Q系列PLC 通訊實例或源碼
⑸ python程序開發之簡單小程序實例(11)小游戲-跳動的小球
Python程序開發之簡單小程序實例
(11)小 游戲 -跳動的小球
一、項目功能
用戶控制擋板來阻擋跳動的小球。
二、項目分析
根據項目功能自定義兩個類,一個用於控制小球在窗體中的運動,一個用於接收用戶按下左右鍵時,擋板在窗體中的運動。在控制小球的類中,我們還需要考慮當小球下降時,碰到擋板時的位置判斷。
三、程序源代碼
源碼部分截圖:
源碼:
#!/usr/bin/python3.6
# -*- coding: GBK -*-
#導入相應模塊
from tkinter import *
import random
import time
#自定義小球的類 Ball
class Ball:
# 初始化
def __init__(self,canvas,paddle,color):
#傳遞畫布值
self.canvas=canvas
#傳遞擋板值
self.paddle=paddle
#畫圓並且保存其ID
self.id=canvas.create_oval(10,10,25,25,fill=color)
self.canvas.move(self.id,245,100)
#小球的水平位置起始列表
start=[-3,-2,-1,1,2,3]
#隨機化位置列表
random.shuffle(start)
self.x=start[0]
self.y=-2
self.canvas_heigh=self.canvas.winfo_height()#獲取窗口高度並保存
self.canvas_width=self.canvas.winfo_width()
#根據參數值繪制小球
def draw(self):
self.canvas.move(self.id,self.x,self.y)
pos=self.canvas.coords(self.id)#返回相應ID代表的圖形的當前坐標(左上角和右上角坐標)
#使得小球不會超出窗口
pad=self.canvas.coords(self.paddle.id)#獲取小球擋板的坐標
if pos[1]=self.canvas_heigh or(pos[3]>=pad[1] and pos[2]>=pad[0] and pos[2]
⑹ Cesium 50個實例集合,講解、分析(內附源碼)
為方便快速測試 Cesium Demo使用,添加了一些演示demo並且提供了webpack打包的示例。目前整理了20個demo,後面會對demo進行講解。
詳情源碼連接:
Cesium 50個實例集合,講解、分析(內附源碼)
示例概要說明:
1.Draw.js 動態繪制 點、線、面
2.Scanning.js 一個簡單的掃描功能
3.Spline.js 樣條插值
4.HeightProperty.js 一個類似淹沒分析的效果
5.VectorTile.js 矢量切片載入
6.Ellipsoids.js 圓特效
7.Sensor.js 感測器,可設置角度,位置等
8.PolylineArrow.js 動態線效果
9.VolumesCZML.js 載入czml文件 支持感測器等動畫特效
10.VolumesApi.js VolumesApi 調用效果
11.Fly.js 繞點飛行
12.Radar.js 氣象雷達動態圖
13.VisibleAnalysis.js 通視分析
14.EagleEye.js 鷹眼地圖
15.Measure.js 測量
16.Translucency.js 地球半透明,可做地下管線、礦山項目
17.Interior.js 地球內部,結合VectorTile.js會出很牛的效果
18.3dtiles載入
19.可視域分析_3DTiles
20.站心坐標轉WGS84
操作說明:
1.npm初始化第三方庫
npm install
2.在根目錄創建文件夾,文件夾名稱為「ThirdParty」 。
3.將根目錄下「node_moles\cesium\Build\Cesium」拷貝到「ThirdParty」 下。
4.編譯
npm run build
5.運行
npm run start
註:可以不要「2」、「3」步驟的,只是為了初學者能更快的找到源碼位置。
⑺ C# Winform滿分求源碼示例[EXCEL模版套版列印],帶預覽。
雖然您明說了不要第三方控制項,但還是要忍不住向您推薦一個!
名叫Grid++Report,支持多種編程語言!支持Web、WinForm!例子代碼基本直接復制就用!現在的版本是5.8,列印只是預覽時才有免費水印,不影響列印。
PS:用了她3年,就當為她做個廣告!
另外,對於Excel,公司協議不能直接給您上代碼,但編程經驗可以分享下:
通過在Excel中定義操作參數,例如"@@cName"表示「單據頭某單元格的值」應該替換為表頭上"cName"列的值!$$HeadBegin、$$RowBegin表示單據頭、單據體的開始區域等,這樣的Excel套打也不難做。