我有一个应用程序可以将文本和图像打印到打印机上的页面上。在页脚处,我们输出一个图像,该图像通过加载一次进行缓存,并存储在 TBitmap 中。在打印例程中,它创建一个新的 TBitmap,然后调用一个分配缓存位图的函数。然后它最终在该位图上调用 Canvas.StretchDraw 。
Function GetFooterGraphic(Var xBitmap : TBitmap) : boolean;
begin
// load cache here
if assigned(g_xFooterBitmap) then
begin
xBitmap.Assign(g_xFooterBitmap);
result := true;
end;
end
// Get bitmap, then:
xCanvas.StretchDraw(xDrawRect, xBitmap);
Run Code Online (Sandbox Code Playgroud)
问题是位图在达到一定数量的页面后无法工作。我只能想象这是一个驱动程序问题,但大多数打印机在不同时间都会发生这种情况。我可以通过每次重新加载位图来修复它,但我宁愿保留缓存。
查看了 VCL,xBitmap.Assign 实际上只是添加了对存储项的引用。我想做的就是拿一份完整的副本,这是最有效的方法。这就涉及到一个问题:
如何使 TBitmap 内容完全独立于任何其他引用?
我希望保持缓存的 TBitmap 内容完全独立,并返回完整的(深层)副本,以便打印不会影响缓存的版本,从而希望解决此问题。
Delphi 2007(如果相关)。
作为python游戏的新手,我似乎错过了一些关于如何开发程序的知识,但也将它保存在你的实时环境中.
像gpodder这样的程序可以直接从源签出运行,这非常方便,但是其他人想要"安装"运行.
许多程序都与一个setup.py一起发布,其中包含以root身份运行"python ./setup.py install"的指令,它将把东西放在你文件系统的某个地方.甚至还有像"develop"这样的安装命令,它们似乎能够实现我想要的目标.所以我尝试过:
export PYTHONPATH=/home/alex/python
python ./setup.py develop --install-dir=/home/alex/python
Run Code Online (Sandbox Code Playgroud)
在本地下载了一堆东西,似乎神奇地确保我正在攻击的应用程序仍然在src树中运行.所以我想我的迂回问题是这是开发python代码的正确方法吗?easy_install和pip等因素如何影响到这个?
编辑添加
所以我尝试了以下方法:
python /usr/share/pyshared/virtualenv.py /home/alex/src/goobook
cd /home/alex/src/goobook/googbook.git
/home/alex/src/goobook/bin/python ./setup.py develop
Run Code Online (Sandbox Code Playgroud)
最后将有问题的程序链接到我的〜/ bin
cd /home/alex/src/goobook
linkbin.pl bin/goobook
Run Code Online (Sandbox Code Playgroud)
然而,调用会引发额外的喋喋不休,这似乎暗示它是错误的:
17:17 alex@socrates/i686 [goobook] >goobook --help
/home/alex/bin/goobook:5: UserWarning: Module pkg_resources was already imported from /home/alex/src/goobook/lib/python2.5/site-packages/setuptools-0.6c8-py2.5.egg/pkg_resources.py, but /home/alex/src/goobook/lib/python2.5/site-packages/distribute-0.6.10-py2.5.egg is being added to sys.path
from pkg_resources import load_entry_point
/home/alex/bin/goobook:5: UserWarning: Module site was already imported from /home/alex/src/goobook/lib/python2.5/site.pyc, but /home/alex/src/goobook/lib/python2.5/site-packages/distribute-0.6.10-py2.5.egg is being added to sys.path
from pkg_resources import load_entry_point
我有一个看起来像这样的枚举:
enum myEnum
{
field1 = 11,
field2 = 12,
field3 = 33
};
Run Code Online (Sandbox Code Playgroud)
在我的代码中,我需要说field1是1,field2是2,field3是3,根据我的变量.这个变量是1或2或3; 这是一个int.我可以写一行吗?像下面的东西,但更短......
if(myVar == 1)
SomeMethod(myEnum.field1)
...
Run Code Online (Sandbox Code Playgroud)
谢谢 :-)
我有一个在v3 API上运行的Google地图,我添加了一些自定义标记,是否可以根据地图的缩放级别进行缩放?我尝试搜索引用但似乎无法找到任何调整MarkerImage大小的方法.
也许我必须删除地图更改缩放的所有内容并创建不同大小的新标记?
我基于我曾经收到的一些代码的自定义菜单.它看起来还不错,但是我对如何去除整个菜单项周围的薄黑边界感到疯狂?!边界/填充在哪里定义?
感谢任何可能帮助我的WPF大师:)
有效的XHTML http://img843.imageshack.us/img843/8813/testn.png
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<SolidColorBrush x:Key="HighlightedBackgroundBrush" Color="#003466" />
<SolidColorBrush x:Key="MenuBackgroundBrush" Color="#003466" />
<SolidColorBrush x:Key="NormalBorderBrush" Color="#FFFFFFFF" />
<SolidColorBrush x:Key="SolidMenuFontBrush" Color="#FFFFFFFF" />
<SolidColorBrush x:Key="HighlightedText" Color="#FFFFFFFF" />
<Style x:Key="{x:Type Menu}" TargetType="{x:Type Menu}">
<Setter Property="OverridesDefaultStyle" Value="True"/>
<Setter Property="SnapsToDevicePixels" Value="True"/>
<Setter Property="Height" Value="25"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Menu}">
<Border Background="{DynamicResource AppBackground}"
BorderBrush="{DynamicResource AppBackground}"
BorderThickness="1">
<StackPanel ClipToBounds="True" Orientation="Vertical" IsItemsHost="True"/>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="{x:Type MenuItem}" TargetType="{x:Type MenuItem}">
<Setter Property="OverridesDefaultStyle" Value="True"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type MenuItem}">
<Border x:Name="Border" BorderThickness="1">
<Grid …Run Code Online (Sandbox Code Playgroud) 使用Hibernate EntityManager 3.5.3-Final和Unitils 3.1会导致:
unitilsAfterTestTearDown(com.unifiedpost.payments.model.TestAccount) Time elapsed: 0.02 sec <<< FAILURE!
java.lang.AbstractMethodError: org.springframework.orm.jpa.persistenceunit.SpringPersistenceUnitInfo.getValidationMode()Ljavax/persistence/ValidationMode;
at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:621)
at org.unitils.orm.jpa.util.provider.hibernate.UnitilsHibernatePersistenceProvider.createContainerEntityManagerFactory(UnitilsHibernatePersistenceProvider.java:47)
at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:227)
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:281)
at org.unitils.orm.jpa.util.JpaEntityManagerFactoryLoader.createEntityManagerFactoryBean(JpaEntityManagerFactoryLoader.java:77)
Run Code Online (Sandbox Code Playgroud)
这也在以下网站报道:http: //jira.unitils.org/browse/UNI-201
所以,我有一个关于让字数统计在emacs LaTeX模式中正常工作的问题(实际上是auctex,但没关系.)这个答案很好.然后我发现我在(buffer-file-name)包含空格时遇到了麻烦.这让它搞得一团糟.这个问题也得到了解决.现在问题是当没有任何空格时解决方案会中断.
所以目前我有两个emacs命令:
(defun latex-word-count ()
(interactive)
(shell-command (concat "/usr/local/bin/texcount.pl "
"-inc "
(shell-quote-argument (concat "'" (buffer-file-name) "'")))))
Run Code Online (Sandbox Code Playgroud)
这在包含文件夹中有空格时有效.
(defun latex-word-c-nospace ()
(interactive)
(shell-command (concat "/usr/local/bin/texcount.pl "
"-inc "
(shell-quote-argument (buffer-file-name)))))
Run Code Online (Sandbox Code Playgroud)
当包含文件夹名称中没有空格时,此方法有效.(好吧所以缩进有点screwey,但无论如何)
我的问题:是否有某种方法可以在两种情况下使用相同的功能?这个答案表明问题在于texcount而不是emacs.有没有办法做到这一点,而不用乱搞texcount.pl?或者,我最好的选择是以Chris Johnsen在SU上提出的方式来戳戳texcount.pl?
我有一个带有文本字段的访问表.它具有字母数字值.但我希望所有值都至少为3位数.所以我想在所有单个或两个数字值前添加零
.
5 must become 005
89 must become 089
Run Code Online (Sandbox Code Playgroud)
如何编写查询以更新表中的所有值.
谢谢tksy
我有这样的数据结构
public class Employee
{
public string Name { get; set; }
public IEnumerable<Employee> Employees { get; private set; }
// ...
}
Run Code Online (Sandbox Code Playgroud)
现在我需要遍历整个结构并对每个项目执行一个方法.
如何在IEnumerable上为这样的遍历函数创建扩展.
Wonderfull会是这样的
employeList.Traverse(e => Save(e), e.Employees.Count > 0);
Run Code Online (Sandbox Code Playgroud)
或者这是不可能的,我必须在我的业务逻辑中创建一个特殊的方法?
非常感谢.