1. c# 在form2中給form1控制項賦值問題
RibbonComp ri = new RibbonComp();這里不應該new,應該是獲取當前這個
2. 有人在XE7里用DevExpress VCL的Ribbon嗎,出錯
用安裝器安裝了4.14版,使用DevExpress的其他組件沒有問題
新建項目,在窗體上添加了個DxRibbon控制項後編譯出錯,提示找不到個obj文件
[ilink32 Error] Fatal: Unable to open file 'DXRIBBONCUSTOMIZATIONFORM.OBJ'
嘗試在delphi下編譯沒有問題。
在源碼中找到'DXRIBBONCUSTOMIZATIONFORM.dpk手動編譯並在option中選擇了genarate all c++builder files
編譯成功,但沒生成obj,仍然不行
以為是安裝器有問題,後來到官網下載了個trial版安裝也是同樣的問題。
需要手動向工程中添加一堆lib,明明這些文件所在文件夾就包含在lib的路徑中
3. 每次打開CAD2009版本時都提示載入自定義文件失敗,未找到_RIBBON.cui文件。而後界面里沒有了工具欄。
這個是缺少文件,把CAD重新安裝一遍,就可以了。
4. 如何編譯wxWidgets示常式序
wxWidgets
wxWidgets是一個程序開發框架/庫, 允許你在Windows、Mac、linux中使用相同的代碼跨平台開發。它主要用C++寫成,但也可以與其他語言綁定比如Python、Perl、Ruby。
本教程中我將向你展示如何在基於Debian的linux中如Ubuntu和Linux Mint中編譯wxwidgets 3.0+。
從源碼編譯wxWidgets並不困難,僅僅需要幾分鍾。庫可以按不同的方式來編譯,比如靜態或者動態庫。
1. 下載 wxWidgets
第一步你需要從wxwidgets.org下載wxWidgets源碼文件。
做完後,解壓到目錄。
2. 設置編譯環境
要編譯wxwidgets,我們需要一些工具包括C++編譯器,在Linux上是g++。所有這些可以通過apt-get工具從倉庫中安裝。
我們還需要wxWidgets依賴的GTK開發庫。
$ sudo apt-get install libgtk-3-dev build-essential checkinstall
這個叫做checkinstall的工具允許我們為wxwidgets創建一個安裝包,這樣之後就可以輕松的使用包管理器來卸載。
3. 編譯 wxWidgets
進入到wxWidgets解壓後的目錄。為了保持清潔,創建一個編譯用的目錄。
$ mkdir gtk-build
$ cd gtk-build/
現在運行configure和make命令。每個將花費一些時間來完成。
$ ../configure --disable-shared --enable-unicode
$ make
"--disable-shared"選項將會編譯靜態庫而不是動態庫。
make命令完成後,編譯就成功了。是時候安裝wxWidgets到正確的目錄。
更多信息請參考install.txt和readme.txt,這可在wxwidgets中的/docs/gtk/目錄下找到。
4. 安裝 checkinstall
現在我們不使用"make install"命令,我們使用checkinstall命令來創建一個wxwidgets的deb安裝包。運行命令:
$ sudo checkinstall
checkinstall會詢問幾個問題,請保證在提問後提供一個版本號,否則將會失敗。
完成這一切後,wxWidgets就安裝好了,deb文件也會創建在相同的目錄下。
5. 追蹤安裝的文件
如果你想要檢查文件安裝的位置,使用dpkg命令後面跟上checkinstall提供的包名。
$ dpkg -L package_name
/.
/usr
/usr/local
/usr/local/lib
/usr/local/lib/libwx_baseu-3.0.a
/usr/local/lib/libwx_gtk3u_propgrid-3.0.a
/usr/local/lib/libwx_gtk3u_html-3.0.a
/usr/local/lib/libwxscintilla-3.0.a
/usr/local/lib/libwx_gtk3u_ribbon-3.0.a
/usr/local/lib/libwx_gtk3u_stc-3.0.a
/usr/local/lib/libwx_gtk3u_qa-3.0.a
/usr/local/lib/libwx_baseu_net-3.0.a
/usr/local/lib/libwxtiff-3.0.a
6. 編譯示例
編譯wxWidgets完成後就可以馬上編譯示常式序了。在相同的目錄下,一個新的sample目錄已經創建了。
進入它並運行下面的命令
$ compile samples
$ cd samples/
$ make
make命令完成後,進入sample 子目錄,這里就有一個可以馬上運行的Demo程序了。
7. 編譯你的第一個程序
你完成編譯demo程序後,可以寫你自己的程序來編譯了。這個也很簡單。
假設你用的是C++,這樣的話你還可以使用編輯器的高亮特性。比如gedit、kate、kwrite等等。或者用全功能的IDE像Geany、Codelite、Codeblocks等等。
然而你的第一個程序只需要用一個文本編輯器來快速完成。
如下:
#includewx.h>
classSimple:public wxFrame
{
public:
Simple(const wxString& title)
: wxFrame(NULL, wxID_ANY, title, wxDefaultPosition, wxSize(250,150))
{
Centre();
}
};
classMyApp:public wxApp
{
public:
boolOnInit()
{
Simple*simple =newSimple(wxT("Simple"));
simple->Show(true);
returntrue;
}
};
wxIMPLEMENT_APP(MyApp);
現在保存並用下面的命令編譯。
# compile
$ g++ basic.cpp `wx-config --cxxflags --libs std`-o program
# run
$ ./program
5. C# excel addin如何實現Ribbon上一個按鈕顯示一個UserControl
得把uc 添加到CustomTaskPaneCollection 中才行
給你一個參考:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Linq;
using Word = Microsoft.Office.Interop.Word;
using Office = Microsoft.Office.Core;
using Microsoft.Office.Tools.Word;
using Microsoft.Office.Tools;
namespace FinWordHelper
{
public partial class ThisAddIn
{
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
this.Application.DocumentOpen += Application_DocumentOpen;
this.Application.DocumentChange += Application_DocumentChange;
}
void Application_DocumentChange()
{
FinPaneManager.Instance.CollectWordPanes();
}
void Application_DocumentOpen(Word.Document Doc)
{
FinPaneManager.Instance.CollectWordPanes();
}
private void ThisAddIn_Shutdown(object sender, System.EventArgs e)
{
}
#region VSTO 生成的代碼
/// <summary>
/// 設計器支持所需的方法 - 不要
/// 使用代碼編輯器修改此方法的內容。
/// </summary>
private void InternalStartup()
{
this.Startup += new System.EventHandler(ThisAddIn_Startup);
this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown);
}
#endregion
}
#region FinPaneManager
public class FinPaneManager
{
private FinPaneManager()
{
custPanes = Globals.ThisAddIn.CustomTaskPanes;
}
private static FinPaneManager m_Instance = new FinPaneManager();
public static FinPaneManager Instance
{
get { return m_Instance; }
}
private CustomTaskPaneCollection custPanes;
public CustomTaskPane GetFinWordFormatPane()
{
Word.Window window = Globals.ThisAddIn.Application.ActiveWindow;
foreach (CustomTaskPane ctp in custPanes)
{
if (ctp.Title == "Fin格式化工具" && ctp.Window == window)
{
return ctp;
}
}
var cp = custPanes.Add(
new WordFormatter(),
"Fin格式化工具",
window
);
cp.Width = 250;
return cp;
}
public CustomTaskPane GetFinWordCheckPane()
{
Word.Window window = Globals.ThisAddIn.Application.ActiveWindow;
foreach (CustomTaskPane ctp in custPanes)
{
if (ctp.Title == "拼寫檢查" && ctp.Window == window)
{
return ctp;
}
}
var cp = custPanes.Add(
new WordSpellCheck(),
"拼寫檢查",
window
);
cp.Width = 250;
return cp;
}
public void CollectWordPanes()
{
for (int i = custPanes.Count - 1; i >= 0; i--)
{
if (custPanes[i].Window == null)
{
custPanes.RemoveAt(i);
}
}
}
}
#endregion
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Office.Tools.Ribbon;
namespace FinWordHelper
{
public partial class CustomRibbon //按鈕調用在這里
{
private void CustomRibbon_Load(object sender, RibbonUIEventArgs e)
{
}
private void button1_Click(object sender, RibbonControlEventArgs e)
{
FinPaneManager.Instance.GetFinWordFormatPane().Visible = true;
}
private void button2_Click(object sender, RibbonControlEventArgs e)
{
FinPaneManager.Instance.GetFinWordCheckPane().Visible = true;
}
}
}
6. VS2013 MFC 基於對話框的應用程序 添加工具欄,添加RIBBON也可以
在虛擬機裡面,安裝VS2010,在安裝目錄裡面有大量的微軟給出的 MFC Sample。這東西你在裡面都可以找到。有大量的例子。
望採納!
7. 如何在MFC下對Ribbon界面進行重寫
實際上,Ribbon界面(Office 2007風格的界面)的開發早在2008年就隨著Visual C++ Feature Pack被引入到Visual Studio 2008中。在即將到來的Visual Studio 2010中,Ribbon界面的開發更是得到了原生的支持,使得Ribbon界面的開發更加簡便高效。
首先,我們啟動Visual Studio 2010,創建一個基於MFC的應用程序,項目模板我們選擇「MFC Application」
在接下來的「MFC應用程序向導」中,我們就可以對項目的可視化風格進行選擇和配置。Visual Studio 2010支持MFC風格、標準的Windows風格,Visual Studio 2005風格和Office 2007風格。而這里的Office 2007風格,就是我們要創建的Ribbon界面。
在接下來的向導頁中,我們可以選擇命令欄(工具欄。菜單欄)的樣式,這里我們當然選擇「Use a ribbon」了。當然,為了跟舊有的系統保持兼容,Visual Studio 2010也支持傳統的命令式界面,如果你的用戶比較保守,想繼續使用傳統的菜單式界面,我們可以選擇「Use a menu bar and toolbar」
為了支持豐富的Office 2007界面風格,MFC默認情況下為MFC文檔應用程序添加了類似Outlook風格的導航面板(Navigation pane)和標題條(Caption bar)。這兩者並不是我們關注的重點,為了更好的展示Ribbon界面,我們這里就去掉這兩個多餘的面板。
到這里,針對新項目的設置就完成了,點擊「Finish」按鈕關閉應用程序向導,Visual Studio 2010就會按照我們的設置創建相應的MFC應用程序解決方案。編譯運行這個解決方案,我們就得到了第一個具有Ribbon界面的應用程序。
在微軟網站上,有六個示例代碼:Windows Ribbon: Samples
網址是http://www.microsoft.com/en-us/download/details.aspx?id=9620
8. 上通達信時出現RibbonBar載入配置文件失敗是什麼意思
1.消息中心加密文件 MsgBox.dax 的解除。用十六進制編輯器搜索 Viewthem.dll 字串符 MsgBox.dax ,也是把後綴名改為 xml
2.修改 Viewthem.dll 文件一處跳轉。用OD載入 Viewthem.dll 搜索字串符 tdxzd@ribbonbar@config@file@xml@ 這里只有一個 tdxzd@ribbonbar@config@file
9. 看Spring-cloud怎樣使用Ribbon
使用Spring Cloud構建實際的微服務架構。
基本概念:
使用Docker進行集成測試
混合持久化
微服務架構
服務發現
API網關
Docker
使用Docker對每一個服務進行構建和部署。使用Docker Compose在一個開發機上進行端到端的集成測試。
混合持久化
混合持久化其實就是說使用多種資料庫來存儲。不同的微服務實例都會使用它們自己的資料庫,並通過REST服務或者消息匯流排來通信,舉個例子,你可以使用基於以下資料庫來構建微服務:
Neo4j(圖形化)
MongoDB(文檔化)
MySQL(關聯)
微服務架構
這個例子演示了如何使用微服務創建一個新的應用。由於在項目中的每一個微服務只有一個單一的父項目。開發者為此得到的收益是可以在本機上運行和開發每一個微服務。添加一個新的微服務非常簡單,當發現微服務時將會自動發現運行時的集群環境上。
Service Discovery
項目中包含兩個發現服務,一個在Netflix Eureka,另一個使用了
Consul from Hashicorp。多種發現服務提供了多種選擇,一個是使用(Consul)來做DNS服務集群,另一個是(Consul)基於代理的API 網關。
API 網關
每一個微服務都關聯Eureka,在整個集群中檢索API路由。使用這個策略,每一個在集群上運行的微服務只需要通過一個共同的API網關進行負載均衡和暴露介面,每一個服務也會自動發現並將路由請求轉發到自己的路由服務中。這個代理技術有助於開發用戶界面,作為平台完整的 API通過自己的主機映射為代理服務。
Docker 實例
下面的實例將會通過Maven來構建,使用Docker為每一個微服務構建容器鏡像。我們可以很優雅的使用Docker Compose在我們自己的主機上搭建全部的微服務集群。
開始構建
在這之前,請先移步至項目的GitHub 倉庫。
https://github.com/kbastani/spring-cloud-microservice-example
克隆或者fork這個項目並且把源碼下載到自己的電腦上。下載完畢後,你需要使用Maven和Docker來編譯和構建本地的容器鏡像。
下載Docker
首先,如果你還沒有Docker請先下載它。可以跟隨這個指南來獲取Docker:https://docs.docker.com/installation/,然後在開發機上安裝並運行。
當然你也需要安裝Docker Compose(https//docs.docker.com/compose/),這個指南將會幫到你:https://docs.docker.com/compose/install/。
環境要求
能夠運行實常式序,需要在你的開發機上安裝下面的軟體:
Maven 3
Java 8
Docker
Docker Compose
構建項目
通過命令行方式來構建當前項目,在項目的根目錄中運行如下的命令:
$ mvn clean install
項目將會根據pom.xml中的每一個項目聲明中下載相應的依賴jar包。每一個服務都將會被構建,同時Maven的Docker插件將會自動從本地Docker Registry中構建每一個容器鏡像。Docker將會在構建成功後,根據命令行運行mvn clean install來清除相應的資源。