我刚刚玩了新的Delphi 2009功能区,添加了几个页面,组和动作客户端(大按钮).我在Photoshop中创建了一些透明的32x32px PNG,并将它们放入TImageList(设置为cd32bit).我将此列表添加到Actionmanager的Images属性,以在按钮上显示它们.在设计时,功能区中的图标看起来很好,但在编译和启动应用程序时,它们具有黑色背景.知道是什么导致了这个以及如何解决这个问题吗?我不想用带状颜色作为背景创建图像,因为我无法切换到功能区的另一个颜色框.
在此先感谢Marc
有没有办法禁用应用程序菜单,左边的圆圈,所以用户无法点击它?
我绝对没有用过,也无法想到我可以使用的任何东西,我找不到任何禁用它的选项.
请帮忙
非常感谢
如何更改Windows Ribbon Framwork的UIRibbon 使用的字体和字体大小?
功能区使用的字体与用户选择的字体与Windows首选项不匹配 - 这是我的应用程序使用的首选项.这意味着随着Windows中的字体变大,功能区变小.
请注意每个屏幕截图中的功能区如何变小:



你可以看到,当我们到达16pt时,功能区上的文字很难阅读.
用户可以将Windows配置为使用其首选字体大小,例如:
和他们喜欢的字体,例如:
但Windows Ribbon Framework默认使用的字体不是用户的首选项.
编辑:将图片向上移动以捕捉被闪亮的东西吸引的松鼠.
编辑2:添加另一张彩色图片,以获得一个凹凸.
编辑3:编辑以获得凹凸
编辑4:添加另一张不同的图片以获得凹凸
功能区允许自定义功能区的颜色.
以下代码片段用于设置UI_PKEY_GlobalBackgroundColor功能区.在这种情况下,我使用的颜色是用户当前选择的Aero配色方案:
IUIFramework framework;
...
TColor glass = Dwm.GetColorizationColor();
VarCast(v, ColorToUIHSB(glass), UI_PKEY_GlobalBackgroundColor.pid);
IPropertyStore ps = framework as IPropertyStore;
ps.SetValue(UI_PKEY_GlobalBackgroundColor, PROPVARIANT(v));
ps.Commit;
Run Code Online (Sandbox Code Playgroud)
现在,色带现在已着色,以匹配Windows的配色方案: …
delphi winapi ribbon user-preferences windows-ribbon-framework
我正在使用"Microsoft Ribbon for WPF"并创建多个RibbonTab.我无法找到一种方法来查看/聚焦设计器中的不同选项卡,默认情况下显示"主页"选项卡.要查看我对"主页"选项卡以外的选项卡进行的设计/ xaml更改,我必须每次调试项目并单击选项卡,这不是很方便.或者我可以命令我想忽略的选项卡xaml.那里的任何人都有解决方案吗?
wpf ribbon ribboncontrolslibrary system.windows.controls.ribbon
我遇到了麻烦.我刚刚在我的应用程序中实现了Microsoft Ribbon Framework.现在我想为一个按钮设置一个图标.所以我写道:
<Ribbon:RibbonButton Header="Create Project" LargeImageSource="pack://application:,,,/Resources/document_empty.png" />
Run Code Online (Sandbox Code Playgroud)
但每次我启动应用程序时,我都会在此行中出现"XamlParseException",内部异常:"找不到文件".
这到底为什么会这样?我不明白,为什么它找不到图像.它只是放在装配的资源中.设计师展示它并且代码没有突出显示,因为它是语法错误或类似的东西......
谁也有这个问题?
谢谢!
如何将自定义图像添加到选项卡和上下文菜单中的功能区按钮.
我尝试了添加图像到功能区按钮的链接,但没有运气:-(.我正在设计Excel的插件.我在标题中添加了这个.
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui" onLoad="Ribbon_Load" loadImage="Ribbon_LoadImage">
<button id="btn2d" keytip="L" screentip="2D Visualization" supertip="2D Part Visualization" label="2D" size="large"/>
<contextMenu idMso="ContextMenuCell">
<button id="btn1" label="my label"/>
</customUI>
Run Code Online (Sandbox Code Playgroud)
代码段
public Bitmap Ribbon_LoadImage(IRibbonControl control)
{
switch (control.Id)
{
case "btn2": return new Bitmap(Properties.Resources.btn1);
case "btn3": return new Bitmap(Properties.Resources.btn2);
case "btn4": return new Bitmap(Properties.Resources.btn3);
case "btn5": return new Bitmap(Properties.Resources.Filter);
case "btnOpt6": return new Bitmap(Properties.Resources.Settings);
case "btnInform7": return new Bitmap(Properties.Resources.Vis);
case "btnHelpPage": return new Bitmap(Properties.Resources.Help);
}
return null;
}
Run Code Online (Sandbox Code Playgroud)
请帮帮我.我正在使用.net 4.0 c#VSTO excel addin for Office 2010.
我们有一个使用Windows Ribbon Framework进行UI 的应用程序.该应用程序本身是用Delphi编写的,并使用Windows Ribbon Framework for Delphi与功能区API进行交互.
我们的功能区XML将很少的命令放入快速访问工具栏.然后,使用可以通过使用内置功能区机制(选择下拉/下拉按钮并单击命令名称)或选择More commands打开配置对话框的命令来删除/添加命令.
我遇到的问题是我无法找到一种方法来获取QA集合中的当前命令状态(无论它们是否可见).
在上面的示例(图片)中,我想检测前五个命令是否被检查,而最后一个命令不是这样,我可以相应地准备配置对话框.
枚举IUICollection和访问存储在里面的项目我没有问题.我也可以获得UI_PKEY_CommandId每个项目.但是,我无法找到读取已检查/未检查状态的方法.我尝试阅读UI_PKEY_BooleanValue和UI_PKEY_Enabled集合中的所有项目,但他们没有返回该状态.
我也尝试过监视,IUICommandHandler.UpdateProperty但是当选中/取消选中此项时,它不会被调用(除了用UI_PKEY_Label键调用它).
Ribbon API甚至支持此功能吗?
好的,所以我得到了自动生成的主要AddIn(附件1),还有我的功能区(附件2),我想从该功能区访问当前活动的Excel工作表.但System.Windows.Forms.Application不包含定义ActiveSheet.
using System;
using System.IO;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Linq;
using Excel = Microsoft.Office.Interop.Excel;
using Office = Microsoft.Office.Core;
using Microsoft.Office.Tools.Excel;
using System.Windows.Forms;
namespace ExcelAddIn1
{
public partial class ThisAddIn
{
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
}
private void ThisAddIn_Shutdown(object sender, System.EventArgs e)
{
}
#region VSTO generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the …Run Code Online (Sandbox Code Playgroud) 我正在将该System.Windows.Controls.Ribbon库用于我的应用程序.一切都工作得非常好,除非我最大化窗口它开始离开屏幕.
我也注意到使用其他WPF应用程序但是当你使用RibbonWindow它时会变得更糟.

这是我的源代码(我认为没什么好激动的):
<RibbonWindow
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="WpfApplication1.MainWindow"
Title="TestWindow" Height="350" Width="525" Background="LightSteelBlue">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Ribbon Grid.Row="0">
<RibbonTab x:Name="TestRibbon" Header="TestRibbon">
<RibbonGroup>
<RibbonButton x:Name="TestButton" Label="Button" LargeImageSource="traffic_lights_green.png" />
</RibbonGroup>
</RibbonTab>
</Ribbon>
<ContentControl Grid.Row="1">
</ContentControl>
</Grid>
</RibbonWindow>
Run Code Online (Sandbox Code Playgroud)
有没有办法阻止窗口这样做?
嘿所有我试图在Outlook 2010 的默认主页选项卡中创建一个按钮.问题是,在VS2013中我添加了一个功能区(可视)并添加了按钮组,但它不断添加到TabAddIns选项卡.


我需要设置什么才能使自定义组/按钮显示在" 主页"选项卡中而不是创建自己的选项卡?
谢谢!
ribbon ×10
c# ×4
wpf ×4
delphi ×3
.net ×2
image ×2
vsto ×2
c#-4.0 ×1
delphi-2009 ×1
excel-addins ×1
ms-office ×1
outlook ×1
resources ×1
system.windows.controls.ribbon ×1
transparent ×1
vb.net ×1
winapi ×1
xaml ×1