以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  如何共用一个录入窗口(html)  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=118042)

--  作者:ZJZK2018
--  发布时间:2018/4/24 1:07:00
--  如何共用一个录入窗口(html)
老师你好:
需求:
在监理日记窗口中有JL_textbox1,JL_textbox2,JL_textbox3,单击任何一个textbox,弹出共用“录入窗口”,如何做到通用录入窗口。
1、在监理日记窗口中随意选择一个textbox,弹出“录入窗口”,在“录入窗口”中录入数据后关闭,自动保存到选中的那个textbox中。
2、对已有值的textbox如何进行“录入窗口”修改?
3、html转换过来的文本能否保持原有格式?

谢谢!

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:html转换.zip



图片点击可在新窗口打开查看此主题相关图片如下:7777777777.png
图片点击可在新窗口打开查看


--  作者:有点甜
--  发布时间:2018/4/24 9:18:00
--  
你为什么要保存文本?你直接保存html代码,才能保存原有格式的。
--  作者:ZJZK2018
--  发布时间:2018/4/24 10:25:00
--  
有点甜老师:
如果保存html代码无法直接调用到word模板中去


--  作者:有点甜
--  发布时间:2018/4/24 10:43:00
--  
以下是引用ZJZK2018在2018/4/24 10:25:00的发言:
有点甜老师:
如果保存html代码无法直接调用到word模板中去

 

不可以。word不可以显示html。

 

换一种思路:做一个htm格式的模板,然后导出替换里面的内容,得到一个html文件,如果你需要用word显示,把后缀名改成.doc即可


--  作者:ZJZK2018
--  发布时间:2018/4/24 11:16:00
--  
有点甜老师:
谢谢甜老师的提醒,换个思路是可以,但下面这个问题还得解决,
在监理日记窗口中有JL_textbox1,JL_textbox2,JL_textbox3等文本框,单击任何一个textbox,弹出共用“录入窗口”,如何做到通用录入窗口。
1、在监理日记窗口中随意选择一个textbox,弹出“录入窗口”,在“录入窗口”中录入数据后关闭,自动保存到选中的那个textbox中。
2、对已有值的textbox如何进行“录入窗口”修改?
[此贴子已经被作者于2018/4/24 11:18:38编辑过]

--  作者:有点甜
--  发布时间:2018/4/24 11:45:00
--  

弹出录入窗口前,记录textbox控件即可

 

vars("控件") = e.Sender

Forms("录入窗口").Show

 

关闭的时候,给textbox赋值

 

vars("控件").Text = "123456"


--  作者:ZJZK2018
--  发布时间:2018/4/24 12:31:00
--  
有点甜老师:
首先谢谢甜老师的指导,帮了我的大忙。
上面是窗口中控件录入,如果是在表里的话如何双击单元格,并赋值给这个单元格?

--  作者:有点甜
--  发布时间:2018/4/24 12:35:00
--  

记录 行名、列名,如

 

vars("行") = e.Row

vars("列") = e.col

 

使用的时候

 

vars("行")(vars("列").Name) = "456"


--  作者:ZJZK2018
--  发布时间:2018/4/24 13:43:00
--  
老师:
下面这段代码出错:
e.Cancel = True \'禁止进入编辑状态
vars("row") = e.Row
vars("col") = e.Col
Dim st As String = vars("row")(vars("col").Name)
\'MessageBox.Show(st)
Vars("AB") = st
Forms("录入").Open()

在录入窗口AfterLoad事件中
Dim txt As WinForm.TextBox = e.Form.Controls("TextBox1")
txt.Value = Vars("AB")

AfterClose事件中
Dim txt As WinForm.TextBox = e.Form.Controls("TextBox1")
Vars("AB") = txt.Value

出错提示:

.NET Framework 版本:2.0.50727.8762
Foxtable 版本:2018.3.9.1
错误所在事件:监理日记,DoubleClick
详细错误信息:
值类型与列类型不匹配不能在 AB 列中存储 <DSGDFG88888ppppppppp>。所需类型是 TextBox。
值类型与列类型不匹配


--  作者:有点甜
--  发布时间:2018/4/24 14:22:00
--  

doubleclick

 

e.Cancel = True \'禁止进入编辑状态
vars("row") = e.Row
vars("col") = e.Col
Vars("方式") = "表"
Forms("录入").Open()
 
afterLoad
 
Dim txt As WinForm.TextBox = e.Form.Controls("TextBox1")
If Vars("方式") = "表" then
    txt.Value = vars("row")(vars("col").Name)
else
    txt.Value = Vars("AB")
End If
 
afterclose
 
Dim txt As WinForm.TextBox = e.Form.Controls("TextBox1")
If Vars("方式") = "表" then
    vars("row")(vars("col").Name) = txt.Value
else
   Vars("AB").Text = txt.Value
End If