有没有办法让WPF窗口透明而不会丢失非客户区域(边框,标题栏,关闭/最小化/最大化按钮)?
将"AllowTransparency"设置为"true"需要将"WindowStyle"设置为"None"(如本答案中所述),这将删除非客户区域.
其中一位WPF开发人员发表了关于透明窗口如何在WPF中工作的博客,以及为什么难以实现对非客户区域透明度的支持.
无论您的窗口样式如何建议,透明的WPF窗口都没有任何可见的非客户区域.这适用于许多场景,其目的是创建自定义窗口形状,但对于只想"淡入"普通窗口的人来说这可能很烦人.
因此,仅WPF解决方案似乎是不可能的.
调用本机SetLayeredWindowAttributes函数并传递WPF窗口的句柄和LWA_ALPHA没有效果,如预期的那样.
我能想到的唯一其他方法是在Win32(或可能是WinForms)窗口中托管WPF内容.但我怀疑试图这样做会导致空域问题.
WPF分层窗口在不同的操作系统上具有不同的功能...... WPF不支持透明度颜色键,因为WPF无法保证呈现您请求的确切颜色,特别是在渲染是硬件加速时.
我不确定我是否正确阅读上述内容,但听起来好像试图托管具有透明度的WPF内容是不可能的.
有任何想法吗?

如果我只为我的textview设置边距,那就是线性布局,一切正常.如果我只为我的textview设置重力,它就有效.但是如果我设置了两个属性(重力和边距),重力仍然保留,边缘设置成功.
我的代码用于设置两个不按预期工作的属性:
tv2=new TextView(this);
tv2.setText("Text");
LinearLayout.LayoutParams para=new LinearLayout.LayoutParams(
LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT );
para.setMargins(0, 10, 0, 10); //left,top,right, bottom
tv2.setLayoutParams(para);
tv2.setGravity(android.view.Gravity.CENTER_HORIZONTAL);
Run Code Online (Sandbox Code Playgroud)
我必须在代码中构建我的布局,不能使用xml文件.
如何在Spring中使用Abstrarct工厂方法模式时指定正确的bean参考.
我在Spring上得到了构造函数参数错误dispatcher-servlet.xml.
错误:
不明确的工厂方法参数类型 - 您是否将正确的bean引用指定为工厂方法参数?
short dispatcher-servlet.xml
<bean id="myFactory" class="cwsei.spring.dao.CategoryFactory" factory-method="findCategory">
<constructor-arg type="java.lang.Enum" value="${categoryType}" />
</bean>
Run Code Online (Sandbox Code Playgroud)
这是我的代码:
public abstract class Category {
public abstract List list(int departId);
..
}
public class CategoryFactory {
public enum CategoryType { firstclass,secondClass,...}
public static Category findCategory(CategoryType categoryType) {
...
}
}
Run Code Online (Sandbox Code Playgroud)
谢谢,mkohan
我需要在调用另一个方法之前调用void方法.
我有这个方法
public void shuffle() {
various = new Random();
currentCard = 0;
currentTotal1 = 0;
currentTotal2 = 0;
for (int first = 0; first < deckOfCards.length; first++) {
int second = various.nextInt(number_cards);
Card temp = deckOfCards[first];
deckOfCards[first] = deckOfCards[second];
deckOfCards[second] = temp;
}
}
Run Code Online (Sandbox Code Playgroud)
在另一堂课中,我有:
public class GameRules {
final deck myDeckOfCards = new deck();
myDeckOfCards.shuffle(); //error here
// first
public ImageIcon GameRules1() {
return myDeckOfCards.giveCardPlayer1().getImage();
}
Run Code Online (Sandbox Code Playgroud)
基本的问题是我需要在显示牌之前在牌组中进行随机播放.没有随机方法,卡的顺序是顺序的
任何的想法?如果我把方法放在里面public ImageIcon GameRules1()并没有给出错误,但是我需要在比赛前洗牌所有牌,之前没有给出卡牌方法.
谢谢
我已经使用MySQL多年,但没有很多使用InnoDB引擎的经验.
我现在正在对它进行一些测试,因为我将要使用它并且根据我已经阅读的内容,如果THAT事务中的任何查询存在任何问题,则不应该允许任何"经历".
我的问题是,为什么,在下面的代码....当第三个查询显然有问题时,它仍然将前两个查询输入数据库吗?
$query = "BEGIN";
mysql_query($query);
$query = "INSERT INTO list_columns(lid,column_name) VALUES(8,'test')";
mysql_query($query);
$query = "INSERT INTO list_columns(lid,column_name) VALUES(8,'test')";
mysql_query($query);
$query = "INSERT INT list_columns(lid,column_name) VALUES(8,'test')";
mysql_query($query);
$query = "COMMIT";
mysql_query($query);
Run Code Online (Sandbox Code Playgroud)
编辑:我理解使用ROLLBACK&all .....但我认为交易的全部目的是如果交易中的任何查询都有任何问题,那么它们中的任何一个都将被执行......或者这只是在一个查询中有多个插入的情况,例如....如果其中一个插入存在问题,那么将不会插入任何插入?
我用GWT编写了应用程序.它适用于客户端.但是,当我在我的应用程序中更改某些内容,重新编译然后部署到服务器和客户端访问我的应用程序时,他的浏览器没有获取应用程序的新版本,而是使用以前的缓存版本.这会触发RPC错误和其他问题.
如何在访问我的页面时强制客户端浏览器获取应用程序的新版本,如果它与服务器上的版本匹配,则使用缓存版本.
以下代码将允许我更新FirstName ="john"和LastName ="Doe"的电子邮件.如何在不使用Save()方法的情况下更新电子邮件和电话?
MongoDB.Driver.MongoServer _server = MongoDB.Driver.MongoServer.Create("mongodb://localhost");
MongoDB.Driver.MongoDatabase _dataBase = _server.GetDatabase("test");
MongoDB.Driver.MongoCollection<Person> _person = _dataBase.GetCollection<Person>("person");
//Creat new person and insert it into collection
ObjectId newId = ObjectId.GenerateNewId();
Person newPerson = new Person();
newPerson.Id = newId.ToString();
newPerson.FirstName = "John";
newPerson.LastName = "Doe";
newPerson.Email = "john.doe@gmail.com";
newPerson.Phone = "8005551222";
_person.Insert(newPerson);
//Update phone and email for all record with firstname john and lastname doe
MongoDB.Driver.Builders.QueryComplete myQuery = MongoDB.Driver.Builders.Query.And(MongoDB.Driver.Builders.Query.EQ("FirstName", "John"), MongoDB.Driver.Builders.Query.EQ("LastName", "Doe"));
MongoDB.Driver.Builders.UpdateBuilder update = MongoDB.Driver.Builders.Update.Set("Email", "jdoe@gmail.com");
_person.Update(myQuery, update);
Run Code Online (Sandbox Code Playgroud) V8是node.js的重要组成部分,它使用Google V8 Javascript引擎.在我的Windows框[Windows 7/64位]上构建V8将花费我数小时的时间来抓取并安装我不熟悉的工具(尽管我使用的是Cygwin).如果那里有一些二进制安装程序,它会给我带来很多麻烦.谷歌搜索没有返回任何明显的位置 - 这里的大师知道吗?
即使你不知道我的确切环境,在这里分享其他人也会帮助同一条船上的人...
我面临的问题是,应用程序正在由第三方维护的OSGi容器上部署.
我的捆绑包中有一些功能可以导入外部包,这些包可能可用,也可能不可用.对于捆绑包不可用的情况,我的捆绑包中存在客户端捆绑包(以帮助避免ClassNotFound异常).在另一种情况下,当存在捆绑包时,应该导入包.
这有可能吗?
提前致谢.