2015-01-14 30 views
0

我想導入大多數Scala Swing符號,但有一些例外。例外情況是我已經提供了我自己的實現的類,如ToggleButton,它在scala.swing(沒有構造函數採用Action)中只有一個基本的實現。使用通配符導入符號,但重命名或忽略其中一些

我可以對我的課程使用不同的名稱(例如ToggleButtonEx),但這使得使用它們更不自然。

我要尋找類似:

import scala.swing.{ToggleButton => SToggleButton, _} // import all but ToggleButton 
import mydomain.swing._ // contains ToggleButton as well 

有一些模式導入匹配語法,或者一些其他的方式來實現這一目標?

+0

令我驚訝的是,在問題中編寫的通配符導入重命名似乎工作。我不確定我以前試過的時候做錯了什麼。 – Suma

回答

2

您可以使用下劃線來排除某些名稱。

import scala.swing.{ToggleButton => _, _} 
import mydomain.swing._ 

另一種解決方案是單獨導入ToggleButton。由於單個進口優先於通配符,因此對ToggleButton的引用將不再含糊不清。

import scala.swing._ 
import mydomain.swing.{ToggleButton, _}