我需要创建继承自TCustomControl的透明组件..因此它是自定义绘制的,但是是其他组件的容器.
你能告诉我怎么做到这一点吗?
最近我开始将一些视图函数转换为Generic Views.转换预期处理POST请求的函数(通过AJAX形式)导致"405 Method not allowed"HTTP异常.我确定不是关于CSRF:Ajax发送有效令牌,将通用视图更改回查看功能(在测试用例中,它们基本相同)修复了问题,并且 - 最后 - 出于测试目的,我已经禁用CSRF中间件.有没有人遇到类似的问题?
是否有内置或外部工具(向导)可以轻松添加具有getter/setter的类成员(已发布字段)?
添加每个字段需要我编写很多代码.我们假设我需要添加Foo: Bar;属性.
我需要写
FFoo: TBar;
procedure SetFoo(const AValue: TBar);
function GetFoo: TBar;
...
property Foo: TBar read GetFoo write SetFoo
Run Code Online (Sandbox Code Playgroud)
任何使它快速简便的工具?
如果我使用内置包在delphi中编译.exe文件,它会生成大约600kb的EXE文件.但是,如果我使用运行时包编译它,大小的总和(.exe +所有必需的.BPLs)大约是6-8 MB(取决于编译器的版本).为什么差异如此显着?
我是AngularJS的新手,而且 - 由于它非常复杂而且这种方法对我来说很新,我有点困惑.
我来自"经典"背景(服务器端模板语言[如Yii,django,Smarty] +一些jQuery使事情有点动态).
假设我有一个菜单栏(Bootstrap NavBar,或其他任何东西) - 一个存在于主页面内容之外的元素,如下所示:
<body>
<div id="menubar">
... <!-- menu content -->
</div>
<div class="container">
<div ng-view></div>
</div>
</body>
Run Code Online (Sandbox Code Playgroud)
现在我想使菜单有点动态,即添加或删除控制器内的一些菜单项.使用服务器端框架及其模板系统,例如Yii - 我只是有一个BaseController带$menuItems变量的类,并且每次都在渲染它menuBar,而所有控制器都会继承,BaseController因此他们可以修改项目.
此外,我需要一个处理searchForm位于内部菜单栏的功能.它应该住在哪里?
什么是Angular方式这样的事情?到目前为止,我一直在考虑创建自定义service或扩展$rootScope.
我正在开发一个多文档应用程序.目前它使用MDI,这对我(作为开发人员)以及我相信的用户来说非常方便.然而,有一个"反对" - 我没有找到快速加载许多子窗口的解决方案(每次创建窗口并最大化以填充父级区域时,有一个'动画'调整大小需要花费大量时间到目前为止,我正在考虑切换回选项卡界面(这需要更多的工作,我需要将一个表单"嵌入"到页面表,因为有许多"种类"的表单可用,一些用于编辑文本文档,一些用于其他对象)...
所以,你有什么看法?我应该使用MDI还是标签界面?
昨天我开始讨论"MDI vs tabbed interface".我已经问过我是否应该继续开发基于MDI的应用程序,或者我应该将子表单嵌入到标签页中.有人指出我应该使用TFrame代替......我的问题是:为什么?
在TFrame上嵌入表单时使用TFrame的优点是什么?到目前为止我不知道,切换只需要我重写代码的某些部分......
(无论如何,我不打算在设计时使用嵌入!)
提前致谢
我正在构建相当复杂的REST API.整个API受身份验证保护.Person系统中的任何人都应该可以访问某些资源(例如,比方说),但是我想"隐藏"特定用户角色的某些字段.
假设Person资源有以下字段:
FirstName
LastName
BirthDate
Address
Run Code Online (Sandbox Code Playgroud)
我想他们都对用户可见与HRManager角色,隐藏Address了JuniorHRManager,留下FirstName+ LastName其他人.
这种RESTful方法是根据应用于登录用户的角色的规则从响应中删除字段吗? 这是最简单的实现我猜(因为我使用的是一个具有全局响应过滤器的优秀ServiceStack ),但我不确定这是否会破坏REST规则?
我到目前为止唯一想到的另一种方法是创建特定于角色的资源(比如PersonForHRManager等).但是,这将是荒谬的,因为系统应该具有角色的可见和隐藏字段的各种组合.
我在文档中找不到答案,所以我在这里问.传递给bind自定义元素方法的绑定上下文究竟是什么?它仅仅等于路由器当前活动的ViewModel吗?至少,这是我到目前为止所发现的.
为什么它不是元素的父(在DOM方面)VM?
用这个代码
@customElement("myelem")
@inlineView("<template><content></content></template>")
export class MyElem{
bind(ctx){
console.log(ctx);
}
}
// welcome.html
<myelem>
<h3>inside myelem</h3>
<myelem>
<h4>inside inside ... </h4>
</myelem>
</myelem>
Run Code Online (Sandbox Code Playgroud)
控制台中的输出只是当前viewmodel(Welcome)打印两次.
我希望它是Welcome第一个(外部)myelem,但是MyElem第二个(内部)出现......
请解释为什么我在这里错了,内部自定义元素如何知道它的实际上下文(我的意思是上面的情况中的外部上下文),而不使用丑陋的黑客,比如在"共享"上下文中创建秘密属性(实际上传递给他们两个的那个)
我正在创建一个应用程序,其布局需要在客户端完全配置.这意味着每个组件(控件)可以调整大小并在表单中移动,可以添加新控件或删除一些控件.我想使用JVCL Runtime Design(Design Surface和Object Inspector).
问题是关于存储和加载表单.T流.WriteComponent方法不支持递归写入,这意味着它只保存组件的"第一级".
因此,举例来说,如果我在表单上放置TPanel,然后在Panel上放置TButton,并在Form上调用WriteComponent,则只保存TPanel,而不是TButton.
我的问题是 - *如何使用WriteComponent存储完整的控件层次结构?
delphi ×6
javascript ×2
mdi ×2
angularjs ×1
api ×1
aurelia ×1
bpl ×1
delphi-2010 ×1
django ×1
exe ×1
frames ×1
http ×1
interface ×1
persistence ×1
python ×1
rest ×1
servicestack ×1
tabs ×1
tframe ×1
tpersistent ×1
web-services ×1